Open CASCADE Technology
6.5.4
|
#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Macro.hxx>
#include <Handle_Interface_InterfaceModel.hxx>
#include <Handle_Interface_CopyControl.hxx>
#include <Handle_Interface_CopyMap.hxx>
#include <Interface_BitMap.hxx>
#include <Interface_GeneralLib.hxx>
#include <Standard_Integer.hxx>
#include <TColStd_SequenceOfInteger.hxx>
#include <Standard_Boolean.hxx>
#include <Handle_Standard_Transient.hxx>
#include <Handle_Interface_GeneralModule.hxx>
#include <Handle_Interface_Protocol.hxx>
Data Structures | |
class | Interface_CopyTool |
Performs Deep Copies of sets of Entities Allows to perform Copy of Interface Entities from a Model to another one. Works by calling general services GetFromAnother and GetImplied. Uses a CopyMap to bind a unique Result to each Copied Entity It is possible to command Copies of Entities (and those they reference) by call to the General Service Library, or to enforce results for transfer of some Entities (calling Bind) A Same CopyTool can be used for several successive Copies from the same Model : either by restarting from scratch (e.g. to copy different parts of a starting Model to several Targets), or incremental : in that case, it is possible to know what is the content of the last increment (defined by last call to ClearLastFlags and queried by call to LastCopiedAfter) Works in two times : first, create the list of copied Entities second, pushes them to a target Model (manages also Model's Header) or returns the Result as an Iterator, as desired The core action (Copy) works by using ShallowCopy (method attached to each class) and Copy from GeneralLib (itself using dedicated tools). It can be redefined for specific actions. More... |