Open CASCADE Technology 7.8.2.dev
StdObjMgt_Persistent Class Referenceabstract

Root class for a temporary persistent object that reads data from a file and then creates transient object using the data. More...

#include <StdObjMgt_Persistent.hxx>

Inheritance diagram for StdObjMgt_Persistent:

Public Types

typedef Handle< StdObjMgt_Persistent >(*) Instantiator()
 Derived class instance create function.
 
typedef NCollection_Sequence< Handle< StdObjMgt_Persistent > > SequenceOfPersistent
 
- Public Types inherited from Standard_Transient
typedef void base_type
 Returns a type descriptor about this object.
 

Public Member Functions

 StdObjMgt_Persistent ()
 
virtual void Read (StdObjMgt_ReadData &theReadData)=0
 Read persistent data from a file.
 
virtual void Write (StdObjMgt_WriteData &theWriteData) const =0
 Write persistent data to a file.
 
virtual void PChildren (SequenceOfPersistent &) const =0
 Gets persistent child objects.
 
virtual Standard_CString PName () const =0
 Returns persistent type name.
 
virtual void ImportDocument (const Handle< TDocStd_Document > &theDocument) const
 Import transient document from the persistent data (to be overridden by document class; does nothing by default for other classes).
 
virtual Handle< TDF_AttributeCreateAttribute ()
 Create an empty transient attribute (to be overridden by attribute classes; does nothing and returns a null handle by default for other classes).
 
virtual Handle< TDF_AttributeGetAttribute () const
 Get transient attribute for the persistent data (to be overridden by attribute classes; returns a null handle by default for non-attribute classes).
 
virtual void ImportAttribute ()
 Import transient attribute from the persistent data (to be overridden by attribute classes; does nothing by default for non-attribute classes).
 
virtual Handle< TCollection_HAsciiStringAsciiString () const
 Get referenced ASCII string (to be overridden by ASCII string class; returns a null handle by default for other classes).
 
virtual Handle< TCollection_HExtendedStringExtString () const
 Get referenced extended string (to be overridden by extended string class; returns a null handle by default for other classes).
 
virtual TDF_Label Label (const Handle< TDF_Data > &theDF) const
 Get a label expressed by referenced extended string (to be overridden by extended string class; returns a null label by default for other classes).
 
Standard_Integer TypeNum () const
 Returns the assigned persistent type number.
 
void TypeNum (Standard_Integer theTypeNum)
 Assigns a persistent type number to the object.
 
Standard_Integer RefNum () const
 Returns the object reference number.
 
void RefNum (Standard_Integer theRefNum)
 Sets an object reference number.
 
- 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.
 

Static Public Member Functions

template<class Persistent >
static Handle< StdObjMgt_PersistentInstantiate ()
 Create a derived class instance.
 
- 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

Root class for a temporary persistent object that reads data from a file and then creates transient object using the data.

Member Typedef Documentation

◆ Instantiator

Handle< StdObjMgt_Persistent >(*) StdObjMgt_Persistent::Instantiator()

Derived class instance create function.

◆ SequenceOfPersistent

Constructor & Destructor Documentation

◆ StdObjMgt_Persistent()

StdObjMgt_Persistent::StdObjMgt_Persistent ( )

Member Function Documentation

◆ AsciiString()

virtual Handle< TCollection_HAsciiString > StdObjMgt_Persistent::AsciiString ( ) const
virtual

Get referenced ASCII string (to be overridden by ASCII string class; returns a null handle by default for other classes).

Reimplemented in StdLPersistent_HString::Ascii.

◆ CreateAttribute()

virtual Handle< TDF_Attribute > StdObjMgt_Persistent::CreateAttribute ( )
virtual

Create an empty transient attribute (to be overridden by attribute classes; does nothing and returns a null handle by default for other classes).

Reimplemented in StdLPersistent_TreeNode, StdLPersistent_Value::AsciiString, StdLPersistent_Value::Integer, StdLPersistent_Value::Name, and StdLPersistent_Value::UAttribute.

◆ ExtString()

virtual Handle< TCollection_HExtendedString > StdObjMgt_Persistent::ExtString ( ) const
virtual

Get referenced extended string (to be overridden by extended string class; returns a null handle by default for other classes).

Reimplemented in StdLPersistent_HString::Extended.

◆ GetAttribute()

virtual Handle< TDF_Attribute > StdObjMgt_Persistent::GetAttribute ( ) const
virtual

Get transient attribute for the persistent data (to be overridden by attribute classes; returns a null handle by default for non-attribute classes).

◆ ImportAttribute()

virtual void StdObjMgt_Persistent::ImportAttribute ( )
virtual

Import transient attribute from the persistent data (to be overridden by attribute classes; does nothing by default for non-attribute classes).

Reimplemented in StdLPersistent_TreeNode, StdLPersistent_Void::instance< AttribClass >, StdPersistent_DataXtd::Geometry, StdPersistent_DataXtd::Position, StdPersistent_Naming::Naming, and StdPersistent_Naming::Naming_1.

◆ ImportDocument()

virtual void StdObjMgt_Persistent::ImportDocument ( const Handle< TDocStd_Document > & theDocument) const
virtual

Import transient document from the persistent data (to be overridden by document class; does nothing by default for other classes).

Reimplemented in StdLPersistent_Document.

◆ Instantiate()

template<class Persistent >
static Handle< StdObjMgt_Persistent > StdObjMgt_Persistent::Instantiate ( )
inlinestatic

Create a derived class instance.

◆ Label()

virtual TDF_Label StdObjMgt_Persistent::Label ( const Handle< TDF_Data > & theDF) const
virtual

Get a label expressed by referenced extended string (to be overridden by extended string class; returns a null label by default for other classes).

◆ PChildren()

◆ PName()

virtual Standard_CString StdObjMgt_Persistent::PName ( ) const
pure virtual

Returns persistent type name.

Implemented in ShapePersistent_BRep::Curve3D, ShapePersistent_BRep::CurveOn2Surfaces, ShapePersistent_BRep::CurveOnClosedSurface, ShapePersistent_BRep::CurveOnSurface, ShapePersistent_BRep::CurveRepresentation, ShapePersistent_BRep::GCurve, ShapePersistent_BRep::PointOnCurve, ShapePersistent_BRep::PointOnCurveOnSurface, ShapePersistent_BRep::PointOnSurface, ShapePersistent_BRep::PointRepresentation, ShapePersistent_BRep::PointsOnSurface, ShapePersistent_BRep::Polygon3D, ShapePersistent_BRep::PolygonOnClosedSurface, ShapePersistent_BRep::PolygonOnClosedTriangulation, ShapePersistent_BRep::PolygonOnSurface, ShapePersistent_BRep::PolygonOnTriangulation, ShapePersistent_Geom::Geometry, ShapePersistent_TopoDS::HShape, StdLPersistent_Data, StdLPersistent_Document, StdLPersistent_HString::Ascii, StdLPersistent_HString::Extended, StdLPersistent_TreeNode, StdLPersistent_Value::AsciiString, StdLPersistent_Value::Comment, StdLPersistent_Value::Integer, StdLPersistent_Value::Name, StdLPersistent_Value::Reference, StdLPersistent_Value::TagSource, StdLPersistent_Value::UAttribute, StdLPersistent_Void::instance< AttribClass >, StdLPersistent_Void::instance< AttribClass >, StdLPersistent_Void::instance< AttribClass >, StdLPersistent_Void::instance< AttribClass >, StdLPersistent_Void::instance< AttribClass >, StdLPersistent_Void::instance< AttribClass >, StdLPersistent_Void::instance< AttribClass >, StdLPersistent_Void::instance< AttribClass >, StdLPersistent_Void::instance< AttribClass >, StdObjMgt_Attribute< Transient >::Simple< DataType >, StdObjMgt_Attribute< Transient >::Simple< DataType >, StdObjMgt_Attribute< Transient >::Simple< DataType >, StdObjMgt_Attribute< Transient >::Simple< DataType >, StdObjMgt_Attribute< Transient >::Simple< DataType >, StdObjMgt_Attribute< Transient >::Simple< DataType >, StdObjMgt_Attribute< Transient >::Simple< gp_Pnt >, StdObjMgt_Attribute< Transient >::Simple< gp_Pnt >, StdObjMgt_Attribute< Transient >::Simple< gp_Pnt >, StdObjMgt_Attribute< Transient >::Simple< gp_Pnt >, StdObjMgt_Attribute< Transient >::Simple< gp_Pnt >, StdObjMgt_Attribute< Transient >::Simple< gp_Pnt >, StdObjMgt_Attribute< Transient >::Simple< Handle< StdObjMgt_Persistent > >, StdObjMgt_Attribute< Transient >::Simple< Handle< StdObjMgt_Persistent > >, StdObjMgt_Attribute< Transient >::Simple< Handle< StdObjMgt_Persistent > >, StdObjMgt_Attribute< Transient >::Simple< Handle< StdObjMgt_Persistent > >, StdObjMgt_Attribute< Transient >::Simple< Handle< StdObjMgt_Persistent > >, StdObjMgt_Attribute< Transient >::Simple< Handle< StdObjMgt_Persistent > >, StdObjMgt_Attribute< Transient >::Simple< Standard_Integer >, StdObjMgt_Attribute< Transient >::Simple< Standard_Integer >, StdObjMgt_Attribute< Transient >::Simple< Standard_Integer >, StdObjMgt_Attribute< Transient >::Simple< Standard_Integer >, StdObjMgt_Attribute< Transient >::Simple< Standard_Integer >, StdObjMgt_Attribute< Transient >::Simple< Standard_Integer >, StdPersistent_Naming::Name, StdPersistent_Naming::Name_1, StdPersistent_Naming::Name_2, StdPersistent_TopLoc::Datum3D, and StdPersistent_TopLoc::ItemLocation.

◆ Read()

◆ RefNum() [1/2]

Standard_Integer StdObjMgt_Persistent::RefNum ( ) const
inline

Returns the object reference number.

◆ RefNum() [2/2]

void StdObjMgt_Persistent::RefNum ( Standard_Integer theRefNum)
inline

Sets an object reference number.

◆ TypeNum() [1/2]

Standard_Integer StdObjMgt_Persistent::TypeNum ( ) const
inline

Returns the assigned persistent type number.

◆ TypeNum() [2/2]

void StdObjMgt_Persistent::TypeNum ( Standard_Integer theTypeNum)
inline

Assigns a persistent type number to the object.

◆ Write()


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