Open CASCADE Technology  6.5.4
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes
CDM_Document Class Reference

An applicative document is an instance of a class inheriting CDM_Document.
These documents have the following properties:
More...

#include <CDM_Document.hxx>

Inheritance diagram for CDM_Document:
Inheritance graph
[legend]

Public Member Functions

virtual void Update (const Handle< CDM_Document > &aToDocument, const Standard_Integer aReferenceIdentifier, const Standard_Address aModifContext)
 The Update method will be called once for each
reference, but it should not perform any computation,
to avoid multiple computation of a same document.

virtual Standard_Boolean Update (TCollection_ExtendedString &ErrorString)
 This method Update will be called
to signal the end of the modified references list.
The document should be recomputed and
UpdateFromDocuments should be called. Update should
returns True in case of success, false otherwise. In
case of Failure, additional information can be given in
ErrorString.

virtual TCollection_ExtendedString StorageFormat () const =0
 The Storage Format is the key which is used to determine in the
application resources the storage driver plugin, the file
extension and other data used to store the document.

virtual void Extensions (TColStd_SequenceOfExtendedString &Extensions) const
 by default empties the extensions.


virtual Standard_Boolean GetAlternativeDocument (const TCollection_ExtendedString &aFormat, Handle< CDM_Document > &anAlternativeDocument)
 This method can be redefined to extract another document in
a different format. For example, to extract a MDTV-Shape
from an applicative document.

Standard_Integer CreateReference (const Handle< CDM_Document > &anOtherDocument)
 Creates a reference from this document to {anOtherDocument}.
Returns a reference identifier. This reference identifier
is unique in the document and will not be used for the
next references, even after the storing of the document.
If there is already a reference between the two documents,
the reference is not created, but its reference identifier
is returned.

void RemoveReference (const Standard_Integer aReferenceIdentifier)
 Removes the reference between the From Document and the
To Document identified by a reference identifier.

void RemoveAllReferences ()
 Removes all references having this document for From Document.

Handle_CDM_Document Document (const Standard_Integer aReferenceIdentifier) const
 Returns the To Document of the reference identified by
aReferenceIdentifier. If the ToDocument is stored and
has not yet been retrieved, this method will retrieve it.

Standard_Boolean IsInSession (const Standard_Integer aReferenceIdentifier) const
 returns True if the To Document of the reference
identified by aReferenceIdentifier is in session, False
if it corresponds to a not yet retrieved document.

Standard_Boolean IsStored (const Standard_Integer aReferenceIdentifier) const
 returns True if the To Document of the reference
identified by aReferenceIdentifier has already been stored,
False otherwise.

TCollection_ExtendedString Name (const Standard_Integer aReferenceIdentifier) const
 returns the name of the metadata of the To Document of
the reference identified by aReferenceIdentifier.

void UpdateFromDocuments (const Standard_Address aModifContext) const
 call virtual method Update on all referencing
documents. This method keeps the list of the --
documents to process.It may be the starting of an
update -- cycle. If not, the reentrant calls made by
Update method (without argument) will append the
referencing documents to the list and call the Update method
(with arguments). Only the first call to UpdateFromDocuments
generate call to Update().

Standard_Integer ToReferencesNumber () const
 returns the number of references having this document as
From Document.

Standard_Integer FromReferencesNumber () const
 returns the number of references having this document as
To Document.

Standard_Boolean ShallowReferences (const Handle< CDM_Document > &aDocument) const
 returns True is this document references aDocument;


Standard_Boolean DeepReferences (const Handle< CDM_Document > &aDocument) const
 returns True is this document references aDocument;


Standard_Integer CopyReference (const Handle< CDM_Document > &aFromDocument, const Standard_Integer aReferenceIdentifier)
 Copies a reference to this document. This method
avoid retrieval of referenced document. The arguments
are the original document and a valid reference
identifier Returns the local identifier.


Standard_Boolean IsReadOnly () const
 indicates that this document cannot be modified.

Standard_Boolean IsReadOnly (const Standard_Integer aReferenceIdentifier) const
 indicates that the referenced document cannot be modified,

void SetIsReadOnly ()
void UnsetIsReadOnly ()
void Modify ()
 Indicates that this document has been modified.
This method increments the modification counter.


Standard_Integer Modifications () const
 returns the current modification counter.

void UnModify ()
Standard_Boolean IsUpToDate (const Standard_Integer aReferenceIdentifier) const
 returns true if the modification counter found in the given
reference is equal to the actual modification counter of
the To Document. This method is able to deal with a reference
to a not retrieved document.

void SetIsUpToDate (const Standard_Integer aReferenceIdentifier)
 Resets the modification counter in the given reference
to the actual modification counter of its To Document.
This method should be called after the application has updated
this document.

void SetComment (const TCollection_ExtendedString &aComment)
 associates a comment with this document.

void AddComment (const TCollection_ExtendedString &aComment)
 appends a comment into comments of this document.

void SetComments (const TColStd_SequenceOfExtendedString &aComments)
 associates a comments with this document.

void Comments (TColStd_SequenceOfExtendedString &aComments) const
 returns the associated comments through <aComments>.
Returns empty sequence if no comments are associated.

Standard_ExtString Comment () const
 returns the first of associated comments. By defaut
the comment is an empty string.

Standard_ExtString Presentation ()
 Returns an alphanumeric string identifying this document
in a unique manner in the current process. The presentation
may change when the document is stored.
Tries to get the 'FileFormat`.Presentation resource
This item is used to give a default presentation
to the document.

Standard_Boolean IsStored () const
Standard_Integer StorageVersion () const
 returns the value of the modification counter at the
time of storage. By default returns 0.

void SetMetaData (const Handle< CDM_MetaData > &aMetaData)
 associates database information to a document which
has been stored. The name of the document is now the
name which has beenused to store the data.

void UnsetIsStored ()
Handle_CDM_MetaData MetaData () const
TCollection_ExtendedString Folder () const
void SetRequestedFolder (const TCollection_ExtendedString &aFolder)
 defines the folder in which the object should be stored.

TCollection_ExtendedString RequestedFolder () const
Standard_Boolean HasRequestedFolder () const
void SetRequestedName (const TCollection_ExtendedString &aName)
 defines the name under which the object should be stored.

TCollection_ExtendedString RequestedName ()
 determines under which the document is going to be
store. By default the name of the document wil be --
used. If the document has no name its presentation
will be used.

void SetRequestedPreviousVersion (const TCollection_ExtendedString &aPreviousVersion)
void UnsetRequestedPreviousVersion ()
Standard_Boolean HasRequestedPreviousVersion () const
TCollection_ExtendedString RequestedPreviousVersion () const
void SetRequestedComment (const TCollection_ExtendedString &aComment)
 defines the Comment with which the object should be stored.

TCollection_ExtendedString RequestedComment () const
void LoadResources ()
 read (or rereads) the following resource.

Standard_Boolean FindFileExtension ()
TCollection_ExtendedString FileExtension ()
 gets the Desktop.Domain.Application.FileFormat.FileExtension resource.

Standard_Boolean FindDataType ()
TCollection_ExtendedString DataType ()
 this datatype will be used if the DBMS deals with this concept
//! gets the FileFormat.DataType resource.
concept.

Standard_Boolean FindVersionDataType ()
TCollection_ExtendedString VersionDataType ()
 this datatype will be used if the DBMS deals with this concept
//! gets the FileFormat.VersionDataType resource.


Standard_Boolean FindDescription ()
TCollection_ExtendedString Description ()
 gets the FileFormat.Description resource.

Standard_Boolean FindDomain ()
TCollection_ExtendedString Domain ()
 gets the FileFormat.Domain resource.

Standard_Boolean FindStoragePlugin ()
Standard_GUID StoragePlugin ()
Standard_Boolean IsModified () const
 returns true if the version is greater than the
storage version

Standard_OStreamPrint (Standard_OStream &anOStream) const
Standard_OStreamoperator<< (Standard_OStream &anOStream)
Standard_Boolean IsOpened () const
void Open (const Handle< CDM_Application > &anApplication)
CDM_CanCloseStatus CanClose () const
void Close ()
const Handle_CDM_Application & Application () const
virtual Standard_Boolean CanCloseReference (const Handle< CDM_Document > &aDocument, const Standard_Integer aReferenceIdentifier) const
 A referenced document may indicate through this
virtual method that it does not allow the closing of
aDocument which it references through the reference
aReferenceIdentifier. By default returns Standard_True;;

virtual void CloseReference (const Handle< CDM_Document > &aDocument, const Standard_Integer aReferenceIdentifier)
 A referenced document may update its internal
data structure when {aDocument} which it references
through the reference {aReferenceIdentifier} is being closed.
By default this method does nothing.

Standard_Boolean IsOpened (const Standard_Integer aReferenceIdentifier) const
 returns true if the document corresponding to the
given reference has been retrieved and opened.
Otherwise returns false. This method does not retrieve
the referenced document

void CreateReference (const Handle< CDM_MetaData > &aMetaData, const Standard_Integer aReferenceIdentifier, const Handle< CDM_Application > &anApplication, const Standard_Integer aToDocumentVersion, const Standard_Boolean UseStorageConfiguration)
Standard_Integer CreateReference (const Handle< CDM_MetaData > &aMetaData, const Handle< CDM_Application > &anApplication, const Standard_Integer aDocumentVersion, const Standard_Boolean UseStorageConfiguration)
Standard_Integer ReferenceCounter () const
virtual void Update ()
 the following method should be used instead:

Update(me:mutable; ErrorString: out ExtendedString from TCollection)
returns Boolean from Standard

Static Public Member Functions

static Handle_CDM_Document FindFromPresentation (const TCollection_ExtendedString &aPresentation)
 returns the document having the given alphanumeric presentation.

static Standard_Boolean FindPresentation (const TCollection_ExtendedString &aPresentation)
 indicates whether a document having the given presentation
does exist.

Protected Member Functions

 CDM_Document ()
void Destroy ()
 ~CDM_Document ()

Protected Attributes

Standard_Boolean myResourcesAreLoaded

Detailed Description


Constructor & Destructor Documentation

CDM_Document::CDM_Document ( ) [protected]
CDM_Document::~CDM_Document ( ) [inline, protected]

Member Function Documentation

const Handle_CDM_Application& CDM_Document::Application ( ) const
virtual Standard_Boolean CDM_Document::CanCloseReference ( const Handle< CDM_Document > &  aDocument,
const Standard_Integer  aReferenceIdentifier 
) const [virtual]
virtual void CDM_Document::CloseReference ( const Handle< CDM_Document > &  aDocument,
const Standard_Integer  aReferenceIdentifier 
) [virtual]
Standard_Integer CDM_Document::CopyReference ( const Handle< CDM_Document > &  aFromDocument,
const Standard_Integer  aReferenceIdentifier 
)
void CDM_Document::CreateReference ( const Handle< CDM_MetaData > &  aMetaData,
const Standard_Integer  aReferenceIdentifier,
const Handle< CDM_Application > &  anApplication,
const Standard_Integer  aToDocumentVersion,
const Standard_Boolean  UseStorageConfiguration 
)
Standard_Integer CDM_Document::CreateReference ( const Handle< CDM_MetaData > &  aMetaData,
const Handle< CDM_Application > &  anApplication,
const Standard_Integer  aDocumentVersion,
const Standard_Boolean  UseStorageConfiguration 
)
void CDM_Document::Destroy ( ) [protected]
Handle_CDM_Document CDM_Document::Document ( const Standard_Integer  aReferenceIdentifier) const
virtual void CDM_Document::Extensions ( TColStd_SequenceOfExtendedString Extensions) const [virtual]
static Handle_CDM_Document CDM_Document::FindFromPresentation ( const TCollection_ExtendedString aPresentation) [static]
virtual Standard_Boolean CDM_Document::GetAlternativeDocument ( const TCollection_ExtendedString aFormat,
Handle< CDM_Document > &  anAlternativeDocument 
) [virtual]
Handle_CDM_MetaData CDM_Document::MetaData ( ) const
Standard_OStream& CDM_Document::operator<< ( Standard_OStream anOStream)
virtual TCollection_ExtendedString CDM_Document::StorageFormat ( ) const [pure virtual]

Implemented in TDocStd_Document.

virtual void CDM_Document::Update ( const Handle< CDM_Document > &  aToDocument,
const Standard_Integer  aReferenceIdentifier,
const Standard_Address  aModifContext 
) [virtual]

Reimplemented in TDocStd_Document.

virtual void CDM_Document::Update ( ) [virtual]

Field Documentation


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