Open CASCADE Technology 7.8.2.dev
|
Definition of General Services adapted to IGES. This Services comprise : Shared & Implied Lists, Copy, Check They are adapted according to the organisation of IGES Entities : Directory Part, Lists of Associativities and Properties are specifically processed. More...
#include <IGESData_GeneralModule.hxx>
Public Member Functions | |
void | FillSharedCase (const Standard_Integer CN, const Handle< Standard_Transient > &ent, Interface_EntityIterator &iter) const override |
Fills the list of Entities shared by an IGESEntity <ent>, according a Case Number <CN> (formerly computed by CaseNum). Considers Properties and Directory Part, and calls OwnSharedCase (which is adapted to each Type of Entity) | |
virtual void | OwnSharedCase (const Standard_Integer CN, const Handle< IGESData_IGESEntity > &ent, Interface_EntityIterator &iter) const =0 |
Lists the Entities shared by a given IGESEntity <ent>, from its specific parameters : specific for each type. | |
virtual void | ListImpliedCase (const Standard_Integer CN, const Handle< Standard_Transient > &ent, Interface_EntityIterator &iter) const override |
Lists the Implied References of <ent>. Here, these are the Associativities, plus the Entities defined by OwnSharedCase. | |
virtual void | OwnImpliedCase (const Standard_Integer CN, const Handle< IGESData_IGESEntity > &ent, Interface_EntityIterator &iter) const |
Specific list of Entities implied by a given IGESEntity <ent> (in addition to Associativities). By default, there are none, but this method can be redefined as required. | |
void | CheckCase (const Standard_Integer CN, const Handle< Standard_Transient > &ent, const Interface_ShareTool &shares, Handle< Interface_Check > &ach) const override |
Semantic Checking of an IGESEntity. Performs general Checks, which use DirChecker, then call OwnCheck which does a check specific for each type of Entity. | |
virtual IGESData_DirChecker | DirChecker (const Standard_Integer CN, const Handle< IGESData_IGESEntity > &ent) const =0 |
Returns a DirChecker, specific for each type of Entity (identified by its Case Number) : this DirChecker defines constraints which must be respected by the DirectoryPart. | |
virtual void | OwnCheckCase (const Standard_Integer CN, const Handle< IGESData_IGESEntity > &ent, const Interface_ShareTool &shares, Handle< Interface_Check > &ach) const =0 |
Performs Specific Semantic Check for each type of Entity. | |
virtual Standard_Boolean | CanCopy (const Standard_Integer CN, const Handle< Standard_Transient > &ent) const override |
Specific answer to the question "is Copy properly implemented" For IGES, answer is always True. | |
virtual Standard_Boolean | NewVoid (const Standard_Integer CN, Handle< Standard_Transient > &entto) const override=0 |
Specific creation of a new void entity. | |
void | CopyCase (const Standard_Integer CN, const Handle< Standard_Transient > &entfrom, const Handle< Standard_Transient > &entto, Interface_CopyTool &TC) const override |
Copy ("Deep") from <entfrom> to <entto> (same type) by using a CopyTool which provides its working Map. For IGESEntities, Copies general data (Directory Part, List of Properties) and call OwnCopyCase. | |
virtual void | OwnCopyCase (const Standard_Integer CN, const Handle< IGESData_IGESEntity > &entfrom, const Handle< IGESData_IGESEntity > &entto, Interface_CopyTool &TC) const =0 |
Copies parameters which are specific of each Type of Entity. | |
virtual void | RenewImpliedCase (const Standard_Integer CN, const Handle< Standard_Transient > &entfrom, const Handle< Standard_Transient > &entto, const Interface_CopyTool &TC) const override |
Renewing of Implied References. For IGESEntities, Copies general data(List of Associativities) and calls OwnRenewCase. | |
virtual void | OwnRenewCase (const Standard_Integer CN, const Handle< IGESData_IGESEntity > &entfrom, const Handle< IGESData_IGESEntity > &entto, const Interface_CopyTool &TC) const |
Renews parameters which are specific of each Type of Entity : the provided default does nothing, but this method may be redefined as required. | |
virtual void | WhenDeleteCase (const Standard_Integer CN, const Handle< Standard_Transient > &ent, const Standard_Boolean dispatched) const override |
Prepares an IGES Entity for delete : works on directory part then calls OwnDeleteCase While dispatch requires to copy the entities, <dispatched> is ignored, entities are cleared in any case. | |
virtual void | OwnDeleteCase (const Standard_Integer CN, const Handle< IGESData_IGESEntity > &ent) const |
Specific preparation for delete, acts on own parameters Default does nothing, to be redefined as required. | |
virtual Handle< TCollection_HAsciiString > | Name (const Standard_Integer CN, const Handle< Standard_Transient > &ent, const Interface_ShareTool &shares) const override |
Returns the name of an IGES Entity (its NameValue) Can be redefined for an even more specific case ... | |
Public Member Functions inherited from Interface_GeneralModule | |
virtual void | FillShared (const Handle< Interface_InterfaceModel > &model, const Standard_Integer CN, const Handle< Standard_Transient > &ent, Interface_EntityIterator &iter) const |
Specific filling of the list of Entities shared by an Entity <ent>, according a Case Number <CN> (formerly computed by CaseNum), considered in the context of a Model <model> Default calls FillSharedCase (i.e., ignores the model) Can be redefined to use the model for working. | |
void | Share (Interface_EntityIterator &iter, const Handle< Standard_Transient > &shared) const |
Adds an Entity to a Shared List (uses GetOneItem on <iter>) | |
virtual void | ListImplied (const Handle< Interface_InterfaceModel > &model, const Standard_Integer CN, const Handle< Standard_Transient > &ent, Interface_EntityIterator &iter) const |
List the Implied References of <ent> considered in the context of a Model <model> : i.e. the Entities which are Referenced while not considered as Shared (not copied if <ent> is, references not renewed by CopyCase but by ImpliedCase, only if referenced Entities have been Copied too) FillShared + ListImplied give the complete list of References Default calls ListImpliedCase (i.e. ignores the model) Can be redefined to use the model for working. | |
virtual Standard_Boolean | Dispatch (const Standard_Integer CN, const Handle< Standard_Transient > &entfrom, Handle< Standard_Transient > &entto, Interface_CopyTool &TC) const |
Dispatches an entity Returns True if it works by copy, False if it just duplicates the starting Handle. | |
virtual Standard_Boolean | NewCopiedCase (const Standard_Integer CN, const Handle< Standard_Transient > &entfrom, Handle< Standard_Transient > &entto, Interface_CopyTool &TC) const |
Specific operator (create+copy) defaulted to do nothing. It can be redefined : When it is not possible to work in two steps (NewVoid then CopyCase). This can occur when there is no default constructor : hence the result <entto> must be created with an effective definition. Remark : if NewCopiedCase is defined, CopyCase has nothing to do Returns True if it has produced something, false else. | |
virtual Standard_Integer | CategoryNumber (const Standard_Integer CN, const Handle< Standard_Transient > &ent, const Interface_ShareTool &shares) const |
Returns a category number which characterizes an entity Category Numbers are managed by the class Category <shares> can be used to evaluate this number in the context Default returns 0 which means "unspecified". | |
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. | |
Additional Inherited Members | |
Public Types inherited from Standard_Transient | |
typedef void | base_type |
Returns a type descriptor about this object. | |
Static Public Member Functions inherited from Standard_Transient | |
static constexpr const char * | get_type_name () |
Returns a type descriptor about this object. | |
static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
Returns type descriptor of Standard_Transient class. | |
Definition of General Services adapted to IGES. This Services comprise : Shared & Implied Lists, Copy, Check They are adapted according to the organisation of IGES Entities : Directory Part, Lists of Associativities and Properties are specifically processed.
|
overridevirtual |
Specific answer to the question "is Copy properly implemented" For IGES, answer is always True.
Reimplemented from Interface_GeneralModule.
|
overridevirtual |
Semantic Checking of an IGESEntity. Performs general Checks, which use DirChecker, then call OwnCheck which does a check specific for each type of Entity.
Implements Interface_GeneralModule.
|
overridevirtual |
Copy ("Deep") from <entfrom> to <entto> (same type) by using a CopyTool which provides its working Map. For IGESEntities, Copies general data (Directory Part, List of Properties) and call OwnCopyCase.
Implements Interface_GeneralModule.
|
pure virtual |
Returns a DirChecker, specific for each type of Entity (identified by its Case Number) : this DirChecker defines constraints which must be respected by the DirectoryPart.
Implemented in IGESAppli_GeneralModule, IGESBasic_GeneralModule, IGESData_DefaultGeneral, IGESDefs_GeneralModule, IGESDimen_GeneralModule, IGESDraw_GeneralModule, IGESGeom_GeneralModule, IGESGraph_GeneralModule, and IGESSolid_GeneralModule.
|
overridevirtual |
Fills the list of Entities shared by an IGESEntity <ent>, according a Case Number <CN> (formerly computed by CaseNum). Considers Properties and Directory Part, and calls OwnSharedCase (which is adapted to each Type of Entity)
Implements Interface_GeneralModule.
|
overridevirtual |
Lists the Implied References of <ent>. Here, these are the Associativities, plus the Entities defined by OwnSharedCase.
Reimplemented from Interface_GeneralModule.
|
overridevirtual |
Returns the name of an IGES Entity (its NameValue) Can be redefined for an even more specific case ...
Reimplemented from Interface_GeneralModule.
|
overridepure virtual |
Specific creation of a new void entity.
Implements Interface_GeneralModule.
Implemented in IGESAppli_GeneralModule, IGESBasic_GeneralModule, IGESData_DefaultGeneral, IGESDefs_GeneralModule, IGESDimen_GeneralModule, IGESDraw_GeneralModule, IGESGeom_GeneralModule, IGESGraph_GeneralModule, and IGESSolid_GeneralModule.
|
pure virtual |
Performs Specific Semantic Check for each type of Entity.
Implemented in IGESAppli_GeneralModule, IGESBasic_GeneralModule, IGESData_DefaultGeneral, IGESDefs_GeneralModule, IGESDimen_GeneralModule, IGESDraw_GeneralModule, IGESGeom_GeneralModule, IGESGraph_GeneralModule, and IGESSolid_GeneralModule.
|
pure virtual |
Copies parameters which are specific of each Type of Entity.
Implemented in IGESAppli_GeneralModule, IGESBasic_GeneralModule, IGESData_DefaultGeneral, IGESDefs_GeneralModule, IGESDimen_GeneralModule, IGESDraw_GeneralModule, IGESGeom_GeneralModule, IGESGraph_GeneralModule, and IGESSolid_GeneralModule.
|
virtual |
Specific preparation for delete, acts on own parameters Default does nothing, to be redefined as required.
Reimplemented in IGESDraw_GeneralModule.
|
virtual |
Specific list of Entities implied by a given IGESEntity <ent> (in addition to Associativities). By default, there are none, but this method can be redefined as required.
Reimplemented in IGESDraw_GeneralModule.
|
virtual |
Renews parameters which are specific of each Type of Entity : the provided default does nothing, but this method may be redefined as required.
Reimplemented in IGESDraw_GeneralModule.
|
pure virtual |
Lists the Entities shared by a given IGESEntity <ent>, from its specific parameters : specific for each type.
Implemented in IGESAppli_GeneralModule, IGESBasic_GeneralModule, IGESData_DefaultGeneral, IGESDefs_GeneralModule, IGESDimen_GeneralModule, IGESDraw_GeneralModule, IGESGeom_GeneralModule, IGESGraph_GeneralModule, and IGESSolid_GeneralModule.
|
overridevirtual |
Renewing of Implied References. For IGESEntities, Copies general data(List of Associativities) and calls OwnRenewCase.
Reimplemented from Interface_GeneralModule.
|
overridevirtual |
Prepares an IGES Entity for delete : works on directory part then calls OwnDeleteCase While dispatch requires to copy the entities, <dispatched> is ignored, entities are cleared in any case.
Reimplemented from Interface_GeneralModule.