Buffer of vertex attributes. This class is intended for advanced usage allowing invalidation of entire buffer content or its sub-part.
More...
|
| Graphic3d_AttribBuffer (const Handle< NCollection_BaseAllocator > &theAlloc) |
| Empty constructor.
|
|
bool | Init (const Standard_Integer theNbElems, const Graphic3d_Attribute *theAttribs, const Standard_Integer theNbAttribs) |
| Allocates new empty array.
|
|
bool | Init (const Standard_Integer theNbElems, const Graphic3d_Array1OfAttribute &theAttribs) |
| Allocates new empty array.
|
|
virtual Standard_Boolean | IsMutable () const override |
| Return TRUE if data can be invalidated; FALSE by default.
|
|
void | SetMutable (Standard_Boolean theMutable) |
| Set if data can be invalidated.
|
|
virtual Standard_Boolean | IsInterleaved () const override |
| Return TRUE for interleaved array; TRUE by default.
|
|
void | SetInterleaved (Standard_Boolean theIsInterleaved) |
| Setup interleaved/non-interleaved array. WARNING! Filling non-interleaved buffer should be implemented on user side without Graphic3d_Buffer auxiliary methods designed for interleaved data.
|
|
virtual Graphic3d_BufferRange | InvalidatedRange () const override |
| Return invalidated range.
|
|
virtual void | Validate () override |
| Reset invalidated range.
|
|
virtual void | Invalidate () override |
| Invalidate the entire buffer data.
|
|
void | Invalidate (Standard_Integer theAttributeIndex) |
| Invalidate the entire attribute data.
|
|
void | Invalidate (Standard_Integer theAttributeIndex, Standard_Integer theVertexLower, Standard_Integer theVertexUpper) |
| Invalidate attribute data within specified sub-range (starting from 0).
|
|
void | Invalidate (Standard_Integer theVertexLower, Standard_Integer theVertexUpper) |
| Invalidate all attribute data within specified vertex sub-range (starting from 0).
|
|
void | invalidate (const Graphic3d_BufferRange &theRange) |
| Invalidate specified sub-range of data (as byte offsets).
|
|
| Graphic3d_Buffer (const Handle< NCollection_BaseAllocator > &theAlloc) |
| Empty constructor.
|
|
Standard_Integer | NbMaxElements () const |
| Return number of initially allocated elements which can fit into this buffer, while NbElements can be overwritten to smaller value.
|
|
const Graphic3d_Attribute * | AttributesArray () const |
|
const Graphic3d_Attribute & | Attribute (const Standard_Integer theAttribIndex) const |
|
Graphic3d_Attribute & | ChangeAttribute (const Standard_Integer theAttribIndex) |
|
Standard_Integer | FindAttribute (Graphic3d_TypeOfAttribute theAttrib) const |
| Find attribute index.
|
|
Standard_Integer | AttributeOffset (const Standard_Integer theAttribIndex) const |
|
const Standard_Byte * | Data (const Standard_Integer theAttribIndex) const |
|
Standard_Byte * | ChangeData (const Standard_Integer theAttribIndex) |
|
const Standard_Byte * | value (const Standard_Integer theElem) const |
| Access specified element.
|
|
Standard_Byte * | changeValue (const Standard_Integer theElem) |
| Access specified element.
|
|
template<typename Type_t > |
const Type_t & | Value (const Standard_Integer theElem) const |
| Access element with specified position and type.
|
|
template<typename Type_t > |
Type_t & | ChangeValue (const Standard_Integer theElem) |
| Access element with specified position and type.
|
|
Standard_Byte * | ChangeAttributeData (Graphic3d_TypeOfAttribute theAttrib, Standard_Integer &theAttribIndex, Standard_Size &theAttribStride) |
| Return the attribute data with stride size specific to this attribute.
|
|
const Standard_Byte * | AttributeData (Graphic3d_TypeOfAttribute theAttrib, Standard_Integer &theAttribIndex, Standard_Size &theAttribStride) const |
| Return the attribute data with stride size specific to this attribute.
|
|
void | release () |
| Release buffer.
|
|
bool | Init (const Standard_Integer theNbElems, const Graphic3d_Attribute *theAttribs, const Standard_Integer theNbAttribs) |
| Allocates new empty array.
|
|
bool | Init (const Standard_Integer theNbElems, const Graphic3d_Array1OfAttribute &theAttribs) |
| Allocates new empty array.
|
|
virtual void | DumpJson (Standard_OStream &theOStream, Standard_Integer theDepth=-1) const override |
| Dumps the content of me into the stream.
|
|
const Standard_Byte * | Data () const |
|
Standard_Byte * | ChangeData () |
|
| NCollection_Buffer (const Handle< NCollection_BaseAllocator > &theAlloc, const Standard_Size theSize=0, Standard_Byte *theData=NULL) |
| Default constructor. When theData is NULL but theSize is not 0 than buffer of specified size will be allocated.
|
|
| ~NCollection_Buffer () |
| Destructor.
|
|
const Standard_Byte * | Data () const |
|
Standard_Byte * | ChangeData () |
|
bool | IsEmpty () const |
|
Standard_Size | Size () const |
| Return buffer length in bytes.
|
|
const Handle< NCollection_BaseAllocator > & | Allocator () const |
|
void | SetAllocator (const Handle< NCollection_BaseAllocator > &theAlloc) |
| Assign new buffer allocator with de-allocation of buffer.
|
|
bool | Allocate (const Standard_Size theSize) |
| Allocate the buffer.
|
|
void | Free () |
| De-allocate buffer.
|
|
Public Member Functions inherited from Standard_Transient |
| Standard_Transient () |
| Empty constructor.
|
|
| Standard_Transient (const Standard_Transient &) |
| Copy constructor – does nothing.
|
|
Standard_Transient & | operator= (const Standard_Transient &) |
| Assignment operator, needed to avoid copying reference counter.
|
|
virtual | ~Standard_Transient () |
| Destructor must be virtual.
|
|
virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
| Returns a type descriptor about this object.
|
|
Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
| Returns a true value if this is an instance of Type.
|
|
Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
| Returns a true value if this is an instance of TypeName.
|
|
Standard_Boolean | 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.
|
|
Standard_Boolean | IsKind (const Standard_CString 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_Transient * | This () 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.
|
|
Standard_Integer | GetRefCount () const noexcept |
| Get the reference counter of this object.
|
|
void | IncrementRefCounter () noexcept |
| Increments the reference counter of this object.
|
|
Standard_Integer | DecrementRefCounter () noexcept |
| Decrements the reference counter of this object; returns the decremented value.
|
|
virtual void | Delete () const |
| Memory deallocator for transient classes.
|
|
Buffer of vertex attributes. This class is intended for advanced usage allowing invalidation of entire buffer content or its sub-part.