Open CASCADE Technology Reference Manual 8.0.0
Loading...
Searching...
No Matches
Public Member Functions
Standard_MMgrRoot Class Referenceabstract

#include <Standard_MMgrRoot.hxx>

Inheritance diagram for Standard_MMgrRoot:
Inheritance graph
[legend]

Public Member Functions

virtual ~Standard_MMgrRoot ()
 Virtual destructor; required for correct inheritance.
 
virtual voidAllocate (const size_t theSize)=0
 Allocate specified number of bytes. The actually allocated space should be rounded up to double word size (4 bytes), as this is expected by implementation of some classes in OCC (e.g. TCollection_AsciiString)
 
virtual voidReallocate (void *thePtr, const size_t theSize)=0
 Reallocate previously allocated memory to contain at least theSize bytes. In case of success, new pointer is returned.
 
virtual void Free (void *thePtr)=0
 Frees previously allocated memory at specified address.
 
virtual int Purge (bool isDestroyed=false)
 Purge internally cached unused memory blocks (if any) by releasing them to the operating system. Must return non-zero if some memory has been actually released, or zero otherwise.
 

Detailed Description

Root class for Open CASCADE mmemory managers. Defines only abstract interface functions.

Constructor & Destructor Documentation

◆ ~Standard_MMgrRoot()

virtual Standard_MMgrRoot::~Standard_MMgrRoot ( )
virtual

Virtual destructor; required for correct inheritance.

Member Function Documentation

◆ Allocate()

virtual void * Standard_MMgrRoot::Allocate ( const size_t theSize)
pure virtual

Allocate specified number of bytes. The actually allocated space should be rounded up to double word size (4 bytes), as this is expected by implementation of some classes in OCC (e.g. TCollection_AsciiString)

Implemented in Standard_MMgrOpt.

◆ Free()

virtual void Standard_MMgrRoot::Free ( void * thePtr)
pure virtual

Frees previously allocated memory at specified address.

Implemented in Standard_MMgrOpt.

◆ Purge()

virtual int Standard_MMgrRoot::Purge ( bool isDestroyed = false)
virtual

Purge internally cached unused memory blocks (if any) by releasing them to the operating system. Must return non-zero if some memory has been actually released, or zero otherwise.

If option isDestroyed is True, this means that memory manager is not expected to be used any more; note however that in general case it is still possible to have calls to that instance of memory manager after this (e.g. to free memory of static objects in OCC). Thus this option should command the memory manager to release any cached memory to the system and not cache any more, but still remain operable...

Default implementation does nothing and returns 0.

Reimplemented in Standard_MMgrOpt.

◆ Reallocate()

virtual void * Standard_MMgrRoot::Reallocate ( void * thePtr,
const size_t theSize )
pure virtual

Reallocate previously allocated memory to contain at least theSize bytes. In case of success, new pointer is returned.

Implemented in Standard_MMgrOpt.


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