OpenLexocad  27.1
Base::Persistence Class Referenceabstract

Persistence class and root of the type system. More...

#include <Persistence.h>

Inheritance diagram for Base::Persistence:
Base::BaseClass Core::Property Core::PropertyContainer Core::Transaction Core::TransactionObject Data::ComplexGeoData Geom::Geometry Geom::Geometry2d Core::PropertyArrowheads Core::PropertyAxis1 Core::PropertyAxis2 Core::PropertyAxis22D Core::PropertyAxis2D Core::PropertyAxis2List Core::PropertyBoolean Core::PropertyBrepData Core::PropertyBrepDataSet Core::PropertyBrush Core::PropertyColor Core::PropertyColorList Core::PropertyCompoundPlaneAngle Core::PropertyDateTime Core::PropertyDateTimeList Core::PropertyDirection Core::PropertyDirection Core::PropertyDirection2d Core::PropertyDirection2d Core::PropertyDrawStyle Core::PropertyEmbeddedFile Core::PropertyFace Core::PropertyFcGeometry Core::PropertyFile Core::PropertyFont Core::PropertyGeometryList Core::PropertyGTransform Core::PropertyGUID Core::PropertyIndexList Core::PropertyInteger Core::PropertyLinkBaseBase Core::PropertyListPointList Core::PropertyLogical Core::PropertyLong Core::PropertyMD5 Core::PropertyMesh Core::PropertyMultiLineText Core::PropertyPen Core::PropertyPercent Core::PropertyPoint Core::PropertyPoint2d Core::PropertyPoint2dList Core::PropertyPointList Core::PropertyProxy Core::PropertyReal Core::PropertyRealList Core::PropertyRelaxation Core::PropertyRelaxationSet Core::PropertySearchSettings Core::PropertySearchSettingsVector Core::PropertySolverElementLinkVector Core::PropertySolverSolverLinkList Core::PropertyString Core::PropertyTextList Core::PropertyTexture2 Core::PropertyTexture2List Core::PropertyTexture2Transform Core::PropertyTextureCoordinateFunction Core::PropertyTextureCoordinateMapping Core::PropertyTransform Core::PropertyUInt32 Core::PropertyUInt64 Core::PropertyUInt8 Core::PropertyUInt8List Core::PropertyUser Core::PropertyVector Core::PropertyVectorList Core::CoreDocument Core::DocObject Core::PropertyBundle< T > Core::TransactionDocumentObject Geom::GeomCurve Geom::GeomPoint Geom::GeomSurface Geom::Geom2dCurve Geom::Geom2dPoint

Public Member Functions

virtual void save (Base::AbstractWriter &, Base::PersistenceVersion &)=0
 This method is used to save properties or very small amounts of data to an XML document. More...
 
virtual void restore (Base::AbstractXMLReader &, Base::PersistenceVersion &)=0
 This method is used to restore properties from an XML document. More...
 
virtual void saveDocFile (Base::AbstractWriter &, const Base::String &, const Base::String &)
 This method is used to save large amounts of data to a binary file. More...
 
virtual void restoreDocFile (Base::Reader &, const Base::String &)
 This method is used to restore large amounts of data from a binary file. More...
 
virtual bool mustbeSaved () const
 Return 'true' if this object must always be saved in the file. More...
 
virtual bool createSQL (Base::AbstractWriter &, Base::PersistenceVersion &, bool)
 This method is used to save properties or very small amounts of data to an XML document. More...
 
- Public Member Functions inherited from Base::BaseClass
virtual Type getTypeId (void) const
 
template<typename T >
bool isDerivedFrom () const
 
bool isDerivedFrom (const Type type) const
 
 BaseClass ()
 Construction. More...
 
virtual ~BaseClass ()
 Destruction. More...
 

Static Public Member Functions

static std::string encodeAttribute (const std::string &)
 
- Static Public Member Functions inherited from Base::BaseClass
static Type getClassTypeId (void)
 
static void init (void)
 
static void * create (void)
 
static void setIfcNameAndID (const std::string &n, int id)
 

Additional Inherited Members

- Public Attributes inherited from Base::BaseClass
long ____deadVal = 0xBADEAFFE
 
- Static Protected Member Functions inherited from Base::BaseClass
static void initSubclass (Base::Type &toInit, const char *ClassName, const char *ParentName, Type::instantiationMethod method=0)
 
static void initIfcTypes (const std::string &s, Base::Type classTypeId, int id)
 

Detailed Description

Persistence class and root of the type system.

Member Function Documentation

◆ createSQL()

virtual bool Base::Persistence::createSQL ( Base::AbstractWriter ,
Base::PersistenceVersion ,
bool   
)
inlinevirtual

This method is used to save properties or very small amounts of data to an XML document.

Reimplemented in Core::Property, Core::DocObject, Core::PropertyGUID, Core::PropertyString, Core::PropertyLinkBase, Core::PropertyInteger, Core::PropertyBoolean, Core::PropertyReal, and Core::PropertyDateTime.

◆ encodeAttribute()

static std::string Base::Persistence::encodeAttribute ( const std::string &  )
static

◆ mustbeSaved()

virtual bool Base::Persistence::mustbeSaved ( ) const
inlinevirtual

Return 'true' if this object must always be saved in the file.

Reimplemented in Core::PropertyDescriptor, Core::PythonClassObject, Core::PythonScriptObject, Core::PostSolver, and Core::PreSolver.

◆ restore()

virtual void Base::Persistence::restore ( Base::AbstractXMLReader ,
Base::PersistenceVersion  
)
pure virtual

This method is used to restore properties from an XML document.

Implemented in Geom::GeomSurfaceOfExtrusion, Geom::GeomSurfaceOfRevolution, Geom::GeomTrimmedSurface, Geom::GeomPlateSurface, Geom::GeomOffsetSurface, Geom::GeomPlane, Geom::GeomToroid, Geom::GeomSphere, Geom::GeomCone, Geom::GeomCylinder, Geom::GeomBSplineSurface, Geom::GeomBezierSurface, Geom::GeomOffsetCurve, Geom::GeomLineSegment, Geom::GeomLine, Geom::GeomArcOfParabola, Geom::GeomParabola, Geom::GeomArcOfHyperbola, Geom::GeomHyperbola, Geom::GeomArcOfEllipse, Geom::Geom2dTrimmedCurve, Geom::Geom2dOffsetCurve, Geom::GeomEllipse, Geom::Geom2dLineSegment, Geom::GeomArcOfCircle, Geom::Geom2dLine, Geom::GeomCircle, Geom::Geom2dArcOfParabola, Geom::Geom2dParabola, Geom::Geom2dArcOfHyperbola, Geom::GeomTrimmedCurve, Geom::Geom2dHyperbola, Geom::Geom2dArcOfEllipse, Geom::GeomBSplineCurve, Geom::Geom2dEllipse, Geom::Geom2dArcOfCircle, Core::PropertyUInt8List, Geom::Geom2dCircle, Geom::GeomBezierCurve, Core::PropertyContainer, Core::PropertyIndexList, Geom::Geom2dBSplineCurve, Core::PropertyPoint2dList, Geom::GeomPoint, Core::PropertyTexture2List, Core::PropertyTypedLinkList< T >, Core::PropertyUInt8, Core::PropertyPoint2d, Core::PropertyLengthOpt, Geom::Geom2dBezierCurve, Core::TransactionObject, Core::PropertyTextureCoordinateFunction, Core::PropertyLinkList, Core::PropertyListPointList, Core::PropertyUInt32, Core::PropertyAxis2List, Core::PropertyBackLinkSetBase, Core::PropertyTextureCoordinateMapping, Geom::Geometry, Geom::Geom2dPoint, Core::PropertyUInt64, Core::PropertyMultiLineText, Core::Transaction, Core::PropertyAxis22D, Core::PropertyPointList, Core::PropertyColorList, Core::PropertyRealList, Core::PropertyArrowheads, Core::PropertyTexture2Transform, Core::PropertyGTransform, Core::PropertyAxis2D, Core::PropertyBrepDataSet, Core::PropertyDirection2d, Core::PropertyGeometryList, Geom::Geometry2d, Core::PropertyDateTimeList, Core::PropertyVectorList, Core::PropertyRelaxationSet, Core::PropertyGUID, Core::PropertySearchSettingsVector, Core::PropertyMD5, Core::PythonClassObject, Core::PropertyLong, Core::PropertyTextList, Core::PropertyLinkSetBase, Core::PropertyAxis2, Core::PropertyBackLinkBase, Core::PropertyLink< T >, Core::PropertyLinkBase, Core::PropertyLinkListBase, Core::PropertyString, Core::PropertySolverElementLinkVector, Core::PropertySolverSolverLinkList, Core::PropertyProxy, Core::PropertyAxis1, Core::PropertyTexture2, Core::PropertyUser, Core::PropertyPoint, Core::PropertyColor, Core::PropertyDirection, Core::PropertyLogical, Core::PropertyMesh, Core::PropertySearchSettings, Core::PropertyTransform, Core::PropertyBrepData, Core::PropertyCompoundPlaneAngle, Core::PropertyDrawStyle, Core::PropertyEmbeddedFile, Core::PropertyFont, Core::PropertyRelaxation, Core::PropertyBrush, Core::PropertyBoolean, Core::PropertyReal, Core::PropertyDateTime, Core::PropertyFace, Core::PropertyVector, Core::PythonScriptObject, Core::PropertyFile, Core::PropertyInteger, Core::PropertyPen, and Core::PropertyPercent.

◆ restoreDocFile()

virtual void Base::Persistence::restoreDocFile ( Base::Reader ,
const Base::String  
)
inlinevirtual

This method is used to restore large amounts of data from a binary file.

Reimplemented in Core::PropertyTexture2List.

◆ save()

virtual void Base::Persistence::save ( Base::AbstractWriter ,
Base::PersistenceVersion  
)
pure virtual

This method is used to save properties or very small amounts of data to an XML document.

Implemented in Geom::GeomSurfaceOfExtrusion, Geom::GeomSurfaceOfRevolution, Geom::GeomTrimmedSurface, Geom::GeomPlateSurface, Geom::GeomOffsetSurface, Geom::GeomPlane, Geom::GeomToroid, Geom::GeomSphere, Geom::GeomCone, Geom::GeomCylinder, Geom::GeomBSplineSurface, Geom::GeomBezierSurface, Geom::GeomOffsetCurve, Geom::GeomLineSegment, Geom::GeomLine, Geom::GeomArcOfParabola, Geom::GeomParabola, Geom::GeomArcOfHyperbola, Geom::GeomHyperbola, Geom::GeomArcOfEllipse, Geom::Geom2dTrimmedCurve, Geom::Geom2dOffsetCurve, Geom::GeomEllipse, Geom::Geom2dLineSegment, Geom::GeomArcOfCircle, Geom::Geom2dLine, Geom::GeomCircle, Geom::Geom2dArcOfParabola, Geom::Geom2dParabola, Geom::Geom2dArcOfHyperbola, Geom::GeomTrimmedCurve, Geom::Geom2dHyperbola, Geom::Geom2dArcOfEllipse, Geom::GeomBSplineCurve, Geom::Geom2dEllipse, Geom::Geom2dArcOfCircle, Core::PropertyUInt8List, Geom::Geom2dCircle, Geom::GeomBezierCurve, Core::PropertyContainer, Core::PropertyIndexList, Geom::Geom2dBSplineCurve, Core::PropertyPoint2dList, Geom::GeomPoint, Core::PropertyTexture2List, Core::PropertyBackLinkSet_SaveV27AsBackLink< T >, Core::PropertyTypedLinkList< T >, Core::PropertyUInt8, Core::PropertyPoint2d, Core::PropertyLengthOpt, Geom::Geom2dBezierCurve, Core::TransactionObject, Core::PropertyTextureCoordinateFunction, Core::PropertyUInt32, Core::PropertyListPointList, Core::PropertyAxis2List, Core::PropertyBackLinkSetBase, Core::PropertyTextureCoordinateMapping, Geom::Geometry, Geom::Geom2dPoint, Core::PropertyUInt64, Core::PropertyMultiLineText, Core::Transaction, Core::PropertyAxis22D, Core::PropertyPointList, Core::PropertyColorList, Core::PropertyRealList, Core::PropertyArrowheads, Core::PropertyTexture2Transform, Core::PropertyBrepDataSet, Core::PropertyGTransform, Core::PropertyAxis2D, Geom::Geometry2d, Core::PropertyDateTimeList, Core::PropertyVectorList, Core::PropertyDirection2d, Core::PropertyGeometryList, Core::PropertyRelaxationSet, Core::PropertyGUID, Core::PropertySearchSettingsVector, Core::PropertyMD5, Core::PythonClassObject, Core::PropertyLong, Core::PropertyTextList, Core::PropertyLinkSetBase, Core::PropertyBackLinkBase, Core::PropertyAxis2, Core::PropertyLinkBase, Core::PropertyLinkListBase, Core::PropertySolverElementLinkVector, Core::PropertySolverSolverLinkList, Core::PropertyString, Core::PropertyProxy, Core::PropertyTexture2, Core::PropertyUser, Core::PropertyPoint, Core::PropertyAxis1, Core::PropertyColor, Core::PropertyLogical, Core::PropertyMesh, Core::PropertySearchSettings, Core::PropertyBrepData, Core::PropertyDirection, Core::PropertyDrawStyle, Core::PropertyEmbeddedFile, Core::PropertyFont, Core::PropertyRelaxation, Core::PropertyBrush, Core::PropertyTransform, Core::PropertyCompoundPlaneAngle, Core::PropertyBoolean, Core::PropertyFace, Core::PropertyReal, Core::PropertyVector, Core::PythonScriptObject, Core::PropertyDateTime, Core::PropertyFile, Core::PropertyInteger, Core::PropertyPen, and Core::PropertyPercent.

◆ saveDocFile()

virtual void Base::Persistence::saveDocFile ( Base::AbstractWriter ,
const Base::String ,
const Base::String  
)
inlinevirtual

This method is used to save large amounts of data to a binary file.

Reimplemented in Core::PropertyTexture2List.


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