All Frameworks  Class Hierarchy  This Framework  Previous  Next  Indexes

GeometricObjects Interface CATICGMContainer

System.IUnknown
  |
  +---System.IDispatch
    |
    +---System.CATBaseUnknown
      |
      +---GeometricObjects.CATICGMUnknown
        |
        +---CATICGMContainer
 

Usage: an implementation of this interface is supplied and you must use it as is. You should not reimplement it.


interface CATICGMContainer

Interface representing the container of all CGM elements.


Method Index


o FindObjectFromTag(CATULONG32,CATGeometricType)
Retrieves an object contained in this CATICGMContainer from its tag.
o Next(CATGeometry*,CATGeometricType)
Scans the geometric objects contained in the container.
o Remove(CATICGMObject*,CATICGMContainer::CATRemovingDependancies)
Removes an object from this CATICGMContainer.

Enumerated Type Index


o CATRemovingDependancies
Defines the type of remove operation inside this CATICGMContainer.

Methods


o FindObjectFromTag
public virtual CATICGMObject* FindObjectFromTag(CATULONG32 iTag,
CATGeometricType iType= CATGeometryType) = 0
Retrieves an object contained in this CATICGMContainer from its tag.
Parameters:
iTag
The persistent tag of an object of this CATICGMContainer.
iType
The type of geometric object on which the search is done.
Returns:
A pointer to the corresponding object.
o Next
public virtual CATGeometry* Next(CATGeometry* iCurrent,
CATGeometricType iType= CATGeometryType) = 0
Scans the geometric objects contained in the container.
This method only works on explicit objects.
Parameters:
iCurrent
The pointer to the CATGeometry from which the search is initialized, may be NULL for retrieving the first object.
iType
The type of geometric object on which the search is done.
Returns:
A pointer to the CATGeometry created by the factory after iCurrent.
Sample: Search of all explicit objects created by a factory.
 CATGeometry* Current = NULL ;
 while ( Current = MyFactory->Next ( Current ) )
 { ... process Current ...  } 
o Remove
public virtual void Remove(CATICGMObject* iObjectToRemove,
const CATICGMContainer::CATRemovingDependancies iHow= CATICGMContainer::KeepDependancies) = 0
Removes an object from this CATICGMContainer.
Parameters:
iObjectToRemove
A pointer to the object to remove from the factory.
iHow
The type of remove operation. The default mode is KeepDependancies, It is recommended to use this method with CATICGMContainer::RemoveDependancies to enhance the memory management. The CATICGMContainer::RemoveDependancies option automatically removes all the implicit objects that are no longer pointed to by other objects. You should only remove objects created by your application. There are reference objects (reference planes for example) that cannot be removed. Trying to remove such objects may lead to corrupted data.

Enumerated Types


o CATRemovingDependancies
enum CATRemovingDependancies {
  KeepDependancies,
  RemoveDependancies
}
Defines the type of remove operation inside this CATICGMContainer.
Parameters:
CATICGMContainer::KeepDependancies
The objects that are pointed to are kept.
CATICGMContainer::RemoveDependancies
The objects that are pointed to are also removed. This mode is recommended.

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

Copyright © 2003, Dassault Systèmes. All rights reserved.