Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Data Structures | Public Member Functions | Protected Attributes
OpenGl_TextureSet Class Reference

Class holding array of textures to be mapped as a set. Textures should be defined in ascending order of texture units within the set. More...

#include <OpenGl_TextureSet.hxx>

Inheritance diagram for OpenGl_TextureSet:
Inheritance graph
[legend]

Data Structures

class  Iterator
 Class for iterating texture set. More...
 
struct  TextureSlot
 Texture slot - combination of Texture and binding Unit. More...
 

Public Member Functions

 OpenGl_TextureSet ()
 Empty constructor.
 
 OpenGl_TextureSet (int theNbTextures)
 Constructor.
 
 OpenGl_TextureSet (const occ::handle< OpenGl_Texture > &theTexture)
 Constructor for a single texture.
 
int TextureSetBits () const
 Return texture units declared within the program,.
 
intChangeTextureSetBits ()
 Return texture units declared within the program,.
 
bool IsEmpty () const
 Return TRUE if texture array is empty.
 
int Size () const
 Return number of textures.
 
int Lower () const
 Return the lower index in texture set.
 
int Upper () const
 Return the upper index in texture set.
 
const occ::handle< OpenGl_Texture > & First () const
 Return the first texture.
 
occ::handle< OpenGl_Texture > & ChangeFirst ()
 Return the first texture.
 
Graphic3d_TextureUnit FirstUnit () const
 Return the first texture unit.
 
const occ::handle< OpenGl_Texture > & Last () const
 Return the last texture.
 
occ::handle< OpenGl_Texture > & ChangeLast ()
 Return the last texture.
 
Graphic3d_TextureUnit LastUnit () const
 Return the last texture unit.
 
Graphic3d_TextureUnitChangeLastUnit ()
 Return the last texture unit.
 
const occ::handle< OpenGl_Texture > & Value (int theIndex) const
 Return the texture at specified position within [0, Size()) range.
 
occ::handle< OpenGl_Texture > & ChangeValue (int theIndex)
 Return the texture at specified position within [0, Size()) range.
 
bool IsModulate () const
 Return TRUE if texture color modulation has been enabled for the first texture or if texture is not set at all.
 
bool HasNonPointSprite () const
 Return TRUE if other than point sprite textures are defined within point set.
 
bool HasPointSprite () const
 Return TRUE if last texture is a point sprite.
 
void InitZero ()
 Nullify all handles.
 
- Public Member Functions inherited from Standard_Transient
 Standard_Transient ()
 Empty constructor.
 
 Standard_Transient (const Standard_Transient &)
 Copy constructor – does nothing.
 
Standard_Transientoperator= (const Standard_Transient &)
 Assignment operator, needed to avoid copying reference counter.
 
virtual ~Standard_Transient ()=default
 Destructor must be virtual.
 
virtual const opencascade::handle< Standard_Type > & DynamicType () const
 Returns a type descriptor about this object.
 
bool IsInstance (const opencascade::handle< Standard_Type > &theType) const
 Returns a true value if this is an instance of Type.
 
bool IsInstance (const char *const theTypeName) const
 Returns a true value if this is an instance of TypeName.
 
bool IsKind (const opencascade::handle< Standard_Type > &theType) const
 Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
 
bool IsKind (const char *const theTypeName) const
 Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism.
 
Standard_TransientThis () const
 Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero.
 
int GetRefCount () const noexcept
 Get the reference counter of this object.
 
void IncrementRefCounter () noexcept
 Increments the reference counter of this object. Uses relaxed memory ordering since incrementing only requires atomicity, not synchronization with other memory operations.
 
int DecrementRefCounter () noexcept
 Decrements the reference counter of this object; returns the decremented value. Uses release ordering for the decrement to ensure all writes to the object are visible before the count reaches zero. An acquire fence is added only when the count reaches zero, ensuring proper synchronization before deletion. This is more efficient than using acq_rel for every decrement.
 
virtual void Delete () const
 Memory deallocator for transient classes.
 

Protected Attributes

NCollection_Array1< TextureSlotmyTextures
 
int myTextureSetBits
 

Additional Inherited Members

- Public Types inherited from Standard_Transient
typedef void base_type
 Returns a type descriptor about this object.
 
- Static Public Member Functions inherited from Standard_Transient
static constexpr const charget_type_name ()
 Returns a type descriptor about this object.
 
static const opencascade::handle< Standard_Type > & get_type_descriptor ()
 Returns type descriptor of Standard_Transient class.
 

Detailed Description

Class holding array of textures to be mapped as a set. Textures should be defined in ascending order of texture units within the set.

Constructor & Destructor Documentation

◆ OpenGl_TextureSet() [1/3]

OpenGl_TextureSet::OpenGl_TextureSet ( )
inline

Empty constructor.

◆ OpenGl_TextureSet() [2/3]

OpenGl_TextureSet::OpenGl_TextureSet ( int theNbTextures)
inline

Constructor.

◆ OpenGl_TextureSet() [3/3]

OpenGl_TextureSet::OpenGl_TextureSet ( const occ::handle< OpenGl_Texture > & theTexture)

Constructor for a single texture.

Member Function Documentation

◆ ChangeFirst()

occ::handle< OpenGl_Texture > & OpenGl_TextureSet::ChangeFirst ( )
inline

Return the first texture.

◆ ChangeLast()

occ::handle< OpenGl_Texture > & OpenGl_TextureSet::ChangeLast ( )
inline

Return the last texture.

◆ ChangeLastUnit()

Graphic3d_TextureUnit & OpenGl_TextureSet::ChangeLastUnit ( )
inline

Return the last texture unit.

◆ ChangeTextureSetBits()

int & OpenGl_TextureSet::ChangeTextureSetBits ( )
inline

Return texture units declared within the program,.

See also
Graphic3d_TextureSetBits.

◆ ChangeValue()

occ::handle< OpenGl_Texture > & OpenGl_TextureSet::ChangeValue ( int theIndex)
inline

Return the texture at specified position within [0, Size()) range.

◆ First()

const occ::handle< OpenGl_Texture > & OpenGl_TextureSet::First ( ) const
inline

Return the first texture.

◆ FirstUnit()

Graphic3d_TextureUnit OpenGl_TextureSet::FirstUnit ( ) const
inline

Return the first texture unit.

◆ HasNonPointSprite()

bool OpenGl_TextureSet::HasNonPointSprite ( ) const

Return TRUE if other than point sprite textures are defined within point set.

◆ HasPointSprite()

bool OpenGl_TextureSet::HasPointSprite ( ) const

Return TRUE if last texture is a point sprite.

◆ InitZero()

void OpenGl_TextureSet::InitZero ( )
inline

Nullify all handles.

◆ IsEmpty()

bool OpenGl_TextureSet::IsEmpty ( ) const
inline

Return TRUE if texture array is empty.

◆ IsModulate()

bool OpenGl_TextureSet::IsModulate ( ) const

Return TRUE if texture color modulation has been enabled for the first texture or if texture is not set at all.

◆ Last()

const occ::handle< OpenGl_Texture > & OpenGl_TextureSet::Last ( ) const
inline

Return the last texture.

◆ LastUnit()

Graphic3d_TextureUnit OpenGl_TextureSet::LastUnit ( ) const
inline

Return the last texture unit.

◆ Lower()

int OpenGl_TextureSet::Lower ( ) const
inline

Return the lower index in texture set.

◆ Size()

int OpenGl_TextureSet::Size ( ) const
inline

Return number of textures.

◆ TextureSetBits()

int OpenGl_TextureSet::TextureSetBits ( ) const
inline

Return texture units declared within the program,.

See also
Graphic3d_TextureSetBits.

◆ Upper()

int OpenGl_TextureSet::Upper ( ) const
inline

Return the upper index in texture set.

◆ Value()

const occ::handle< OpenGl_Texture > & OpenGl_TextureSet::Value ( int theIndex) const
inline

Return the texture at specified position within [0, Size()) range.

Field Documentation

◆ myTextures

NCollection_Array1<TextureSlot> OpenGl_TextureSet::myTextures
protected

◆ myTextureSetBits

int OpenGl_TextureSet::myTextureSetBits
protected

The documentation for this class was generated from the following file: