Open CASCADE Technology  6.5.4
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Public Member Functions
IFSelect_Transformer Class Reference

A Transformer defines the way an InterfaceModel is transformed
(without sending it to a file).
In order to work, each type of Transformer defines it method
Perform, it can be parametred as needed.

It receives a Model (the data set) as input. It then can :
More...

#include <IFSelect_Transformer.hxx>

Inheritance diagram for IFSelect_Transformer:
Inheritance graph
[legend]

Public Member Functions

virtual Standard_Boolean Perform (const Interface_Graph &G, const Handle< Interface_Protocol > &protocol, Interface_CheckIterator &checks, Handle< Interface_InterfaceModel > &newmod)=0
 Performs a Transformation (defined by each sub-class) :
<G> gives the input data (especially the starting model) and
can be used for queries (by Selections, etc...)
<protocol> allows to work with General Services as necessary
(it applies to input data)
If the change corresponds to a conversion to a new protocol,
see also the method ChangeProtocol
<checks> stores produced checks messages if any
<newmod> gives the result of the transformation :

virtual Standard_Boolean ChangeProtocol (Handle< Interface_Protocol > &newproto) const
 This methods allows to declare that the Protocol applied to
the new Model has changed. It applies to the last call to
Perform.

Returns True if the Protocol has changed, False else.
The provided default keeps the starting Protocol. This method
should be redefined as required by the effect of Perform.

virtual Standard_Boolean Updated (const Handle< Standard_Transient > &entfrom, Handle< Standard_Transient > &entto) const =0
 This method allows to know what happened to a starting
entity after the last Perform. If <entfrom> (from starting
model) has one and only one known item which corresponds in
the new produced model, this method must return True and
fill the argument <entto>. Else, it returns False.

virtual TCollection_AsciiString Label () const =0
 Returns a text which defines the way a Transformer works
(to identify the transformation it performs)


Detailed Description


Member Function Documentation

virtual TCollection_AsciiString IFSelect_Transformer::Label ( ) const [pure virtual]
    - if it is Null (i.e. has not been affected), the transformation <br>
      has been made on the spot, it is assumed to cause no change <br>
      to the graph of dependances <br>
    - if it equates the starting Model, it has been transformed on <br>
      the spot (possibiliy some entities were replaced inside it) <br>
    - if it is new, it corresponds to a new data set which replaces <br>
      the starting one <br>


<me> is mutable to allow results for ChangeProtocol to be
memorized if needed, and to store informations useful for
the method Updated

Returns True if Done, False if an Error occured : in this case,
if a new data set has been produced, the transformation
is ignored, else data may be corrupted.

Implemented in IFSelect_TransformStandard, and IGESSelect_SplineToBSpline.

virtual Standard_Boolean IFSelect_Transformer::Updated ( const Handle< Standard_Transient > &  entfrom,
Handle< Standard_Transient > &  entto 
) const [pure virtual]

The documentation for this class was generated from the following file: