Open CASCADE Technology 7.8.2.dev
NCollection_Buffer Class Reference

Low-level buffer object. More...

#include <NCollection_Buffer.hxx>

Inheritance diagram for NCollection_Buffer:

Public Member Functions

 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_ByteData () const
 
Standard_ByteChangeData ()
 
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.
 
virtual void DumpJson (Standard_OStream &theOStream, Standard_Integer theDepth=-1) const
 Dumps the content of me into the stream.
 
- 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 ()
 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_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.
 
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.
 

Protected Attributes

Standard_BytemyData
 data pointer
 
Standard_Size mySize
 buffer length in bytes
 
Handle< NCollection_BaseAllocatormyAllocator
 buffer allocator
 

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 char * get_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

Low-level buffer object.

Constructor & Destructor Documentation

◆ NCollection_Buffer()

NCollection_Buffer::NCollection_Buffer ( const Handle< NCollection_BaseAllocator > & theAlloc,
const Standard_Size theSize = 0,
Standard_Byte * theData = NULL )
inline

Default constructor. When theData is NULL but theSize is not 0 than buffer of specified size will be allocated.

Parameters
theAllocmemory allocator
theSizebuffer size
theDatabuffer data allocated by theAlloc

◆ ~NCollection_Buffer()

NCollection_Buffer::~NCollection_Buffer ( )
inline

Destructor.

Member Function Documentation

◆ Allocate()

bool NCollection_Buffer::Allocate ( const Standard_Size theSize)
inline

Allocate the buffer.

Parameters
theSizebuffer length in bytes

◆ Allocator()

const Handle< NCollection_BaseAllocator > & NCollection_Buffer::Allocator ( ) const
inline
Returns
buffer allocator

◆ ChangeData()

Standard_Byte * NCollection_Buffer::ChangeData ( )
inline
Returns
buffer data

◆ Data()

const Standard_Byte * NCollection_Buffer::Data ( ) const
inline
Returns
buffer data

◆ DumpJson()

virtual void NCollection_Buffer::DumpJson ( Standard_OStream & theOStream,
Standard_Integer theDepth = -1 ) const
inlinevirtual

Dumps the content of me into the stream.

Reimplemented in Graphic3d_BoundBuffer, Graphic3d_Buffer, and Graphic3d_IndexBuffer.

◆ Free()

void NCollection_Buffer::Free ( )
inline

De-allocate buffer.

◆ IsEmpty()

bool NCollection_Buffer::IsEmpty ( ) const
inline
Returns
true if buffer is not allocated

◆ SetAllocator()

void NCollection_Buffer::SetAllocator ( const Handle< NCollection_BaseAllocator > & theAlloc)
inline

Assign new buffer allocator with de-allocation of buffer.

◆ Size()

Standard_Size NCollection_Buffer::Size ( ) const
inline

Return buffer length in bytes.

Field Documentation

◆ myAllocator

Handle< NCollection_BaseAllocator > NCollection_Buffer::myAllocator
protected

buffer allocator

◆ myData

Standard_Byte* NCollection_Buffer::myData
protected

data pointer

◆ mySize

Standard_Size NCollection_Buffer::mySize
protected

buffer length in bytes


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