|
Open CASCADE Technology
6.5.4
|
#include <TObj_Persistence.hxx>
Static Public Member Functions | |
| static Handle< TObj_Object > | CreateNewObject (const Standard_CString theType, const TDF_Label &theLabel) |
| Creates and returns a new object of the registered type If the type is not registered, returns Null handle. | |
| static void | DumpTypes (Standard_OStream &theOs) |
| Dumps names of all the types registered for persistence to the specified stream. | |
Protected Member Functions | |
| TObj_Persistence (const Standard_CString theType) | |
| The constructor registers the object. | |
| virtual | ~TObj_Persistence () |
| The destructor unregisters the object. | |
| virtual Handle< TObj_Object > | New (const TDF_Label &theLabel) const =0 |
| The method must be redefined in the derived class and return new object of the proper type. | |
Static Protected Member Functions | |
| static TObj_DataMapOfStringPointer & | getMapOfTypes () |
| Dictionary storing all the registered types. It is implemented as static variable inside member function in order to ensure initialization at first call. | |
This class is intended to be a root of tools (one per class) to manage persistence of objects inherited from TObj_Object It provides a mechanism to recover correctly typed objects (subtypes of TObj_Object) out of their persistent names
This is a special kind of object, it automatically registers itself in a global map when created, and the only thing it does is to create a new object of the type that it manages, by request
| TObj_Persistence::TObj_Persistence | ( | const Standard_CString | theType | ) | [protected] |
Protected methods, to be used or defined by descendants
| virtual TObj_Persistence::~TObj_Persistence | ( | ) | [protected, virtual] |
| static Handle< TObj_Object > TObj_Persistence::CreateNewObject | ( | const Standard_CString | theType, |
| const TDF_Label & | theLabel | ||
| ) | [static] |
Public methods, to be called externally
| static void TObj_Persistence::DumpTypes | ( | Standard_OStream & | theOs | ) | [static] |
| static TObj_DataMapOfStringPointer& TObj_Persistence::getMapOfTypes | ( | ) | [static, protected] |
| virtual Handle< TObj_Object > TObj_Persistence::New | ( | const TDF_Label & | theLabel | ) | const [protected, pure virtual] |
1.8.0