GeometricObjects CATCGMJournal

Usage: you must use this class as is. You should never derive it.


public class CATCGMJournal

Class defining the journal of the topological operations.

The journal logs the modifications of the faces, free edges and free vertices of topological objects. The journal is designed as a composite pattern: it represents a journal item ( ) and a list of items ( ).
You have to manage the creation and deletion of a journal. The journal items are created when you report new events inside the journal list ( , ). The journal items are deleted with the journal list in which they are imbedded, except if you have directly created an item, without inserting it inside a journal list. The journal information is also deleted with the journal it informs.


Constructor and Destructor Index


o CATCGMJournal(CATCGMJournalList*)
Constructs a CGM journal.
o ~CATCGMJournal()

Method Index


o AddRef()
Use AddRef when a new handler of the journal references it
o CastToReportItem()
Casts this into a journal item if possible.
o CastToReportList()
Casts this into a journal list if possible.
o ForgetObjects(CATLISTP(CATGeometry)&)
Discards a list of objects from the topological journal.
o GetActiveMode()
Returns the activation mode.
o GetType()
Returns the type of this journal.
o MakeAttributesFollow(CATCGMAttrId*)
DO NOT USE
Automatically reports the attributes pointed by the objects before the operation, on the objects after the operation.
o Release()
Use Release when a handler want to unreference a journal that it handles.
o SetActiveMode(short)
Activates or deactivates this journal.

Enumerated Type Index


o Type
The types of report.

Constructor and Destructor


o CATCGMJournal
public CATCGMJournal( iList)
Constructs a CGM journal.
Parameters:
iList
If not NULL, a pointer to a journal list, inside which this will be inserted after its creation.
o ~CATCGMJournal
public virtual ~CATCGMJournal()

Methods


o AddRef
public AddRef()
Use AddRef when a new handler of the journal references it
Returns:
Number of objects that still reference the journal
o CastToReportItem
public virtual CastToReportItem()
Casts this into a journal item if possible.
Returns:
The casted pointer if this is a CATCGMJournalItem, NULL otherwise.
o CastToReportList
public virtual CastToReportList()
Casts this into a journal list if possible.
Returns:
The casted pointer if this is a CATCGMJournalList, NULL otherwise.
o ForgetObjects
public virtual ForgetObjects( const iToSimplify)
Discards a list of objects from the topological journal. This method is to be used with caution. Only objects which are not required by the backtracking mechanism can be discarded. If not used properly, this method can lead to an invalid journal.
Parameters:
iToSimplify
The list of objects to be discarded from the journal.
Returns:
0 if the objects can be removed - otherwise 1
o GetActiveMode
public GetActiveMode()
Returns the activation mode.
Returns:
The activation mode.
Legal values: 0 inactive, 1 active
o GetType
public virtual GetType()
Returns the type of this journal.
Returns:
The type of the journal.
o MakeAttributesFollow
public virtual MakeAttributesFollow( const iAttr)
DO NOT USE
Automatically reports the attributes pointed by the objects before the operation, on the objects after the operation.
Not available for a creation item.
Parameters:
iAttr
The type of attribute to report. If the objects before the operation point an attribute of this type, the attribute will also be shared by the objects after modification.
o Release
public Release()
Use Release when a handler want to unreference a journal that it handles.
Returns:
Number of objects that still reference the journal. When this number reach 0 the journal is deleted
o SetActiveMode
public SetActiveMode( iMode)
Activates or deactivates this journal.
Parameters:
iMode
The activation mode.
Legal values: 0 inactive, 1 active

Enumerated Types


o Type
enum Type {
  None,
  List,
  Creation,
  Modification,
  Subdivision,
  Absorption,
  Deletion,
  Keep,
  UnspecModif,
  Copy,
  NoCopy
}
The types of report.
Parameters:
None
The report is inactivated.
List
The report is a CATCGMJournalList
Creation
The report is a CATCGMJournalItem describing the creation of an object.
Modification
The report is a CATCGMJournalItem describing the modification of an object in another one.
Subdivision
The report is a CATCGMJournalItem describing the subdivision of an object in P other objects.
Absorption
The report is a CATCGMJournalItem describing the absorption of N objects inside P>1 other objects.
Deletion
The report is a CATCGMJournalItem describing the deletion of an object.
Keep
The report is a CATCGMJournalItem describing that the object is not modified.
UnspecModif
One of the preceeding operations.
Copy
By default, the input objects are considered to be kept.
NoCopy
By default, none input object is considered to be kept.

This object is included in the file: CATCGMJournal.h
If needed, your Imakefile.mk should include the module: CATGeometricObjects

Copyright © 1999-2014, Dassault Systèmes. All rights reserved.