Open CASCADE Technology 7.8.2.dev
BinLDrivers_DocumentStorageDriver Class Reference

persistent implementation of storage a document in a binary file More...

#include <BinLDrivers_DocumentStorageDriver.hxx>

Inheritance diagram for BinLDrivers_DocumentStorageDriver:

Public Member Functions

 BinLDrivers_DocumentStorageDriver ()
 Constructor.
 
virtual void Write (const Handle< CDM_Document > &theDocument, const TCollection_ExtendedString &theFileName, const Message_ProgressRange &theRange=Message_ProgressRange()) override
 Write <theDocument> to the binary file <theFileName>
 
virtual void Write (const Handle< CDM_Document > &theDocument, Standard_OStream &theOStream, const Message_ProgressRange &theRange=Message_ProgressRange()) override
 Write <theDocument> to theOStream.
 
virtual Handle< BinMDF_ADriverTableAttributeDrivers (const Handle< Message_Messenger > &theMsgDriver)
 
void AddSection (const TCollection_AsciiString &theName, const Standard_Boolean isPostRead=Standard_True)
 Create a section that should be written after the OCAF data.
 
Standard_Boolean IsQuickPart (const Standard_Integer theVersion) const
 Return true if document should be stored in quick mode for partial reading.
 
- Public Member Functions inherited from PCDM_StorageDriver
virtual Handle< PCDM_DocumentMake (const Handle< CDM_Document > &aDocument)
 raises NotImplemented.
 
virtual void Make (const Handle< CDM_Document > &aDocument, PCDM_SequenceOfDocument &Documents)
 By default, puts in the Sequence the document returns by the previous Make method.
 
void SetFormat (const TCollection_ExtendedString &aformat)
 
TCollection_ExtendedString GetFormat () const
 
Standard_Boolean IsError () const
 
void SetIsError (const Standard_Boolean theIsError)
 
PCDM_StoreStatus GetStoreStatus () const
 
void SetStoreStatus (const PCDM_StoreStatus theStoreStatus)
 
- Public Member Functions inherited from PCDM_Writer
- 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 Member Functions

void WriteSubTree (const TDF_Label &theData, Standard_OStream &theOS, const Standard_Boolean &theQuickPart, const Message_ProgressRange &theRange=Message_ProgressRange())
 Write the tree under <theLabel> to the stream <theOS>
 
virtual void WriteSection (const TCollection_AsciiString &, const Handle< CDM_Document > &, Standard_OStream &)
 define the procedure of writing a section to file.
 
virtual void WriteShapeSection (BinLDrivers_DocumentSection &theDocSection, Standard_OStream &theOS, const TDocStd_FormatVersion theDocVer, const Message_ProgressRange &theRange=Message_ProgressRange())
 defines the procedure of writing a shape section to file
 
virtual void EnableQuickPartWriting (const Handle< Message_Messenger > &, const Standard_Boolean)
 Enables writing in the quick part access mode.
 
virtual void Clear ()
 clears the writing-cash data in drivers if any.
 

Protected Attributes

Handle< BinMDF_ADriverTablemyDrivers
 
BinObjMgt_SRelocationTable myRelocTable
 
Handle< Message_MessengermyMsgDriver
 

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

persistent implementation of storage a document in a binary file

Constructor & Destructor Documentation

◆ BinLDrivers_DocumentStorageDriver()

BinLDrivers_DocumentStorageDriver::BinLDrivers_DocumentStorageDriver ( )

Constructor.

Member Function Documentation

◆ AddSection()

void BinLDrivers_DocumentStorageDriver::AddSection ( const TCollection_AsciiString & theName,
const Standard_Boolean isPostRead = Standard_True )

Create a section that should be written after the OCAF data.

◆ AttributeDrivers()

virtual Handle< BinMDF_ADriverTable > BinLDrivers_DocumentStorageDriver::AttributeDrivers ( const Handle< Message_Messenger > & theMsgDriver)
virtual

◆ Clear()

virtual void BinLDrivers_DocumentStorageDriver::Clear ( )
protectedvirtual

clears the writing-cash data in drivers if any.

Reimplemented in BinDrivers_DocumentStorageDriver.

◆ EnableQuickPartWriting()

virtual void BinLDrivers_DocumentStorageDriver::EnableQuickPartWriting ( const Handle< Message_Messenger > & ,
const Standard_Boolean  )
inlineprotectedvirtual

Enables writing in the quick part access mode.

Reimplemented in BinDrivers_DocumentStorageDriver.

◆ IsQuickPart()

Standard_Boolean BinLDrivers_DocumentStorageDriver::IsQuickPart ( const Standard_Integer theVersion) const

Return true if document should be stored in quick mode for partial reading.

◆ Write() [1/2]

virtual void BinLDrivers_DocumentStorageDriver::Write ( const Handle< CDM_Document > & theDocument,
const TCollection_ExtendedString & theFileName,
const Message_ProgressRange & theRange = Message_ProgressRange() )
overridevirtual

Write <theDocument> to the binary file <theFileName>

Reimplemented from PCDM_StorageDriver.

◆ Write() [2/2]

virtual void BinLDrivers_DocumentStorageDriver::Write ( const Handle< CDM_Document > & theDocument,
Standard_OStream & theOStream,
const Message_ProgressRange & theRange = Message_ProgressRange() )
overridevirtual

Write <theDocument> to theOStream.

Reimplemented from PCDM_StorageDriver.

◆ WriteSection()

virtual void BinLDrivers_DocumentStorageDriver::WriteSection ( const TCollection_AsciiString & ,
const Handle< CDM_Document > & ,
Standard_OStream &  )
protectedvirtual

define the procedure of writing a section to file.

◆ WriteShapeSection()

virtual void BinLDrivers_DocumentStorageDriver::WriteShapeSection ( BinLDrivers_DocumentSection & theDocSection,
Standard_OStream & theOS,
const TDocStd_FormatVersion theDocVer,
const Message_ProgressRange & theRange = Message_ProgressRange() )
protectedvirtual

defines the procedure of writing a shape section to file

Reimplemented in BinDrivers_DocumentStorageDriver.

◆ WriteSubTree()

void BinLDrivers_DocumentStorageDriver::WriteSubTree ( const TDF_Label & theData,
Standard_OStream & theOS,
const Standard_Boolean & theQuickPart,
const Message_ProgressRange & theRange = Message_ProgressRange() )
protected

Write the tree under <theLabel> to the stream <theOS>

Field Documentation

◆ myDrivers

Handle< BinMDF_ADriverTable > BinLDrivers_DocumentStorageDriver::myDrivers
protected

◆ myMsgDriver

Handle< Message_Messenger > BinLDrivers_DocumentStorageDriver::myMsgDriver
protected

◆ myRelocTable

BinObjMgt_SRelocationTable BinLDrivers_DocumentStorageDriver::myRelocTable
protected

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