This class is used to manipulate a complete independent, self sufficient data structure and its services:  
 More...
 | 
|   | TDF_Data () | 
|   | A new and empty Data structure.  
  | 
|   | 
| const TDF_Label  | Root () const | 
|   | Returns the root label of the Data structure.  
  | 
|   | 
| Standard_Integer  | Transaction () const | 
|   | Returns the current transaction number.  
  | 
|   | 
| Standard_Integer  | Time () const | 
|   | Returns the current tick. It is incremented each Commit.  
  | 
|   | 
| Standard_Boolean  | IsApplicable (const Handle< TDF_Delta > &aDelta) const | 
|   | Returns true if <aDelta> is applicable HERE and NOW.  
  | 
|   | 
| Handle< TDF_Delta >  | Undo (const Handle< TDF_Delta > &aDelta, const Standard_Boolean withDelta=Standard_False) | 
|   | Apply <aDelta> to undo a set of attribute modifications.  
  | 
|   | 
| void  | Destroy () | 
|   | 
|   | ~TDF_Data () | 
|   | 
| Standard_Boolean  | NotUndoMode () const | 
|   | Returns the undo mode status.  
  | 
|   | 
| Standard_OStream &  | Dump (Standard_OStream &anOS) const | 
|   | Dumps the Data on <aStream>.  
  | 
|   | 
| Standard_OStream &  | operator<< (Standard_OStream &anOS) const | 
|   | 
| void  | AllowModification (const Standard_Boolean isAllowed) | 
|   | Sets modification mode.  
  | 
|   | 
| Standard_Boolean  | IsModificationAllowed () const | 
|   | returns modification mode.  
  | 
|   | 
| void  | SetAccessByEntries (const Standard_Boolean aSet) | 
|   | Initializes a mechanism for fast access to the labels by their entries. The fast access is useful for large documents and often access to the labels via entries. Internally, a table of entry - label is created, which allows to obtain a label by its entry in a very fast way. If the mechanism is turned off, the internal table is cleaned. New labels are added to the table, if the mechanism is on (no need to re-initialize the mechanism).  
  | 
|   | 
| Standard_Boolean  | IsAccessByEntries () const | 
|   | Returns a status of mechanism for fast access to the labels via entries.  
  | 
|   | 
| Standard_Boolean  | GetLabel (const TCollection_AsciiString &anEntry, TDF_Label &aLabel) | 
|   | Returns a label by an entry. Returns Standard_False, if such a label doesn't exist or mechanism for fast access to the label by entry is not initialized.  
  | 
|   | 
| void  | RegisterLabel (const TDF_Label &aLabel) | 
|   | An internal method. It is used internally on creation of new labels. It adds a new label into internal table for fast access to the labels by entry.  
  | 
|   | 
| const TDF_HAllocator &  | LabelNodeAllocator () const | 
|   | Returns TDF_HAllocator, which is an incremental allocator used by TDF_LabelNode. This allocator is used to manage TDF_LabelNode objects, but it can also be used for allocating memory to application-specific data (be careful because this allocator does not release the memory). The benefits of this allocation scheme are noticeable when dealing with large OCAF documents, due to:  
  | 
|   | 
| void  | DumpJson (Standard_OStream &theOStream, Standard_Integer theDepth=-1) const | 
|   | Dumps the content of me into the stream.  
  | 
|   | 
  Public Member Functions inherited from Standard_Transient | 
|   | Standard_Transient () | 
|   | Empty constructor.  
  | 
|   | 
|   | Standard_Transient (const Standard_Transient &) | 
|   | Copy constructor – does nothing.  
  | 
|   | 
| Standard_Transient &  | operator= (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_Transient *  | This () 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.  
  | 
|   | 
This class is used to manipulate a complete independent, self sufficient data structure and its services: 
Access to the root label;
Opens, aborts, commits a transaction;
Generation and use of Delta, depending on the time. This class uses a special allocator (see LabelNodeAllocator() method) for more efficient allocation of objects in memory.