# ApplicationFramework
TKBinL
BinLDrivers

# BinLDrivers_DocumentStorageDriver Class Reference

persistent implemention of storage a document in a binary file

`#include <BinLDrivers_DocumentStorageDriver.hxx>`

Inheritance diagram for BinLDrivers_DocumentStorageDriver:

[legend]

## Public Member Functions

Standard_EXPORT | BinLDrivers_DocumentStorageDriver ()
| Constructor .
virtual Standard_EXPORT TCollection_ExtendedString | SchemaName () const
| pure virtual method definition
virtual Standard_EXPORT void | Write (const Handle(CDM_Document)&theDocument, const TCollection_ExtendedString &theFileName)
| Write <thedocument> to the binary file <thefilename> .
Standard_EXPORT Standard_Boolean | IsError () const
virtual Standard_EXPORT Handle_BinMDF_ADriverTable | AttributeDrivers (const Handle(CDM_MessageDriver)&theMsgDriver)
Standard_EXPORT void | AddSection (const TCollection_AsciiString &theName, const Standard_Boolean isPostRead=Standard_True)
| Create a section that should be written after the OCAF data .
Standard_EXPORT const | Handle (Standard_Type)&DynamicType() const

## Protected Member Functions

Standard_EXPORT void | WriteSubTree (const TDF_Label &theData, Standard_OStream &theOS)
| Write the tree under <thelabel> to the stream <theos> .
virtual Standard_EXPORT void | WriteSection (const TCollection_AsciiString &theName, const Handle(CDM_Document)&theDoc, Standard_OStream &theOS)
| define the procedure of writing a section to file.
Standard_EXPORT void | WriteMessage (const TCollection_ExtendedString &theMessage)
| write theMessage to the MessageDriver of the Application

## Protected Attributes

BinObjMgt_SRelocationTable | myRelocTable
Standard_Boolean | myIsError

## Private Member Functions

Standard_EXPORT void | FirstPass (const TDF_Label &theRoot)
Standard_EXPORT Standard_Boolean | FirstPassSubTree (const TDF_Label &L, TDF_LabelList &ListOfEmptyL)
| Returns true if <l> and its sub-labels do not contain attributes to store .
Standard_EXPORT void | WriteInfoSection (const Handle(CDM_Document)&theDocument, const TCollection_AsciiString &theFile)
| Write info secton using FSD_BinaryFile driver .
Standard_EXPORT void | UnsupportedAttrMsg (const Handle(Standard_Type)&theType)

## Private Attributes

BinObjMgt_Persistent | myPAtt
Handle_BinMDF_ADriverTable | myDrivers
Handle_CDM_MessageDriver | myMsgDriver
TDF_LabelList | myEmptyLabels
TColStd_MapOfTransient | myMapUnsupported
TColStd_IndexedMapOfTransient | myTypesMap
BinLDrivers_VectorOfDocumentSection | mySections

## Constructor & Destructor Documentation

Standard_EXPORT BinLDrivers_DocumentStorageDriver::BinLDrivers_DocumentStorageDriver | ( |  | ) |

## Member Function Documentation

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

virtual Standard_EXPORT Handle_BinMDF_ADriverTable BinLDrivers_DocumentStorageDriver::AttributeDrivers | ( | const Handle(CDM_MessageDriver)& | theMsgDriver | ) | `[virtual]`

| Reimplemented in BinDrivers_DocumentStorageDriver.

Standard_EXPORT void BinLDrivers_DocumentStorageDriver::FirstPass | ( | const TDF_Label & | theRoot | ) | `[private]`

Standard_EXPORT Standard_Boolean BinLDrivers_DocumentStorageDriver::FirstPassSubTree | ( | const TDF_Label & | L,
|  | TDF_LabelList & | ListOfEmptyL
| ) | `[private]`

Standard_EXPORT const BinLDrivers_DocumentStorageDriver::Handle | ( | Standard_Type |  | ) | const

| Reimplemented from PCDM_StorageDriver. Reimplemented in BinDrivers_DocumentStorageDriver.

Standard_EXPORT Standard_Boolean BinLDrivers_DocumentStorageDriver::IsError | ( |  | ) | const

virtual Standard_EXPORT TCollection_ExtendedString BinLDrivers_DocumentStorageDriver::SchemaName | ( |  | ) | const`[virtual]`

| Implements PCDM_StorageDriver.

Standard_EXPORT void BinLDrivers_DocumentStorageDriver::UnsupportedAttrMsg | ( | const Handle(Standard_Type)& | theType | ) | `[private]`

virtual Standard_EXPORT void BinLDrivers_DocumentStorageDriver::Write | ( | const Handle(CDM_Document)& | theDocument,
|  | const TCollection_ExtendedString & | theFileName
| ) | `[virtual]`

| Reimplemented from PCDM_StorageDriver.

Standard_EXPORT void BinLDrivers_DocumentStorageDriver::WriteInfoSection | ( | const Handle(CDM_Document)& | theDocument,
|  | const TCollection_AsciiString & | theFile
| ) | `[private]`

Standard_EXPORT void BinLDrivers_DocumentStorageDriver::WriteMessage | ( | const TCollection_ExtendedString & | theMessage | ) | `[protected]`

virtual Standard_EXPORT void BinLDrivers_DocumentStorageDriver::WriteSection | ( | const TCollection_AsciiString & | theName,
|  | const Handle(CDM_Document)& | theDoc,
|  | Standard_OStream & | theOS
| ) | `[protected, virtual]`

Standard_EXPORT void BinLDrivers_DocumentStorageDriver::WriteSubTree | ( | const TDF_Label & | theData,
|  | Standard_OStream & | theOS
| ) | `[protected]`

## Field Documentation

Handle_BinMDF_ADriverTable BinLDrivers_DocumentStorageDriver::myDrivers `[private]`

TDF_LabelList BinLDrivers_DocumentStorageDriver::myEmptyLabels `[private]`

Standard_Boolean BinLDrivers_DocumentStorageDriver::myIsError `[protected]`

TColStd_MapOfTransient BinLDrivers_DocumentStorageDriver::myMapUnsupported `[private]`

Handle_CDM_MessageDriver BinLDrivers_DocumentStorageDriver::myMsgDriver `[private]`

BinObjMgt_Persistent BinLDrivers_DocumentStorageDriver::myPAtt `[private]`

BinObjMgt_SRelocationTable BinLDrivers_DocumentStorageDriver::myRelocTable `[protected]`

BinLDrivers_VectorOfDocumentSection BinLDrivers_DocumentStorageDriver::mySections `[private]`

TColStd_IndexedMapOfTransient BinLDrivers_DocumentStorageDriver::myTypesMap `[private]`

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

- BinLDrivers_DocumentStorageDriver.hxx