// This file is generated by WOK (CPPExt). // Please do not edit this file; modify original file instead. // The copyright and license terms as defined for the original file apply to // this header file considered to be the "object code" form of the original source. #ifndef _IGESData_SpecificModule_HeaderFile #define _IGESData_SpecificModule_HeaderFile #ifndef _Standard_HeaderFile #include #endif #ifndef _Standard_DefineHandle_HeaderFile #include #endif #ifndef _Handle_IGESData_SpecificModule_HeaderFile #include #endif #ifndef _Standard_Transient_HeaderFile #include #endif #ifndef _Standard_Integer_HeaderFile #include #endif #ifndef _Handle_IGESData_IGESEntity_HeaderFile #include #endif #ifndef _Handle_Message_Messenger_HeaderFile #include #endif #ifndef _Standard_Boolean_HeaderFile #include #endif class IGESData_IGESEntity; class IGESData_IGESDumper; class Message_Messenger; //! This class defines some Services which are specifically
//! attached to IGES Entities : Dump
class IGESData_SpecificModule : public Standard_Transient { public: //! Specific Dump for each type of IGES Entity : it concerns only
//! own parameters, the general data (Directory Part, Lists) are
//! taken into account by the IGESDumper
//! See class IGESDumper for the rules to follow for and
//! level
Standard_EXPORT virtual void OwnDump(const Standard_Integer CN,const Handle(IGESData_IGESEntity)& ent,const IGESData_IGESDumper& dumper,const Handle(Message_Messenger)& S,const Standard_Integer own) const = 0; //! Specific Automatic Correction on own Parameters of an Entity.
//! It works by setting in accordance redundant data, if there are
//! when there is no ambiguity (else, it does nothing).
//! Remark that classic Corrections on Directory Entry (to set
//! void data) are taken into account alsewhere.
//!
//! For instance, many "Associativity Entities" have a Number of
//! Properties which must have a fixed value.
//! Or, a ConicalArc has its Form Number which records the kind of
//! Conic, also determined from its coefficients
//! But, a CircularArc of which Distances (Center-Start) and
//! (Center-End) are not equal cannot be corrected ...
//!
//! Returns True if something has been corrected in
//! By default, does nothing. If at least one of the Types
//! processed by a sub-class of SpecificModule has a Correct
//! procedure attached, this method can be redefined
Standard_EXPORT virtual Standard_Boolean OwnCorrect(const Standard_Integer CN,const Handle(IGESData_IGESEntity)& ent) const; DEFINE_STANDARD_RTTI(IGESData_SpecificModule) protected: private: }; // other Inline functions and methods (like "C++: function call" methods) #endif