OCC Main Page | DataExchange | Toolkits | Packages | Class Hierarchy | Data Structures | File List | Data Fields | Globals

DataExchange
TKXSBase
IFSelect


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 :
- edit this Model on the spot (i.e. alter its content : by
editing entities, or adding/replacing some ...)
- produce a copied Model, which detains the needed changes
(typically on the same type, but some or all entities beeing
rebuilt or converted; or converted from a protocol to
another one)
.

#include <IFSelect_Transformer.hxx>

Inheritance diagram for IFSelect_Transformer:

Inheritance graph
[legend]

Public Member Functions

virtual Standard_EXPORT 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 :
- if it is Null (i.e. has not been affected), the transformation
has been made on the spot, it is assumed to cause no change
to the graph of dependances
- if it equates the starting Model, it has been transformed on
the spot (possibiliy some entities were replaced inside it)
- if it is new, it corresponds to a new data set which replaces
the starting one

<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.
.
virtual Standard_EXPORT 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_EXPORT 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 Standard_EXPORT TCollection_AsciiString Label () const =0
 Returns a text which defines the way a Transformer works
(to identify the transformation it performs)
.
Standard_EXPORT const Handle (Standard_Type)&DynamicType() const

Member Function Documentation

virtual Standard_EXPORT Standard_Boolean IFSelect_Transformer::ChangeProtocol Handle(Interface_Protocol)&  newproto  )  const [virtual]
 

Standard_EXPORT const IFSelect_Transformer::Handle Standard_Type   )  const
 

Reimplemented in IFSelect_TransformStandard, and IGESSelect_SplineToBSpline.

virtual Standard_EXPORT TCollection_AsciiString IFSelect_Transformer::Label  )  const [pure virtual]
 

Implemented in IFSelect_TransformStandard, and IGESSelect_SplineToBSpline.

virtual Standard_EXPORT Standard_Boolean IFSelect_Transformer::Perform const Interface_Graph G,
const Handle(Interface_Protocol)&  protocol,
Interface_CheckIterator checks,
Handle(Interface_InterfaceModel)&  newmod
[pure virtual]
 

Implemented in IFSelect_TransformStandard, and IGESSelect_SplineToBSpline.

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

Implemented in IFSelect_TransformStandard, and IGESSelect_SplineToBSpline.


The documentation for this class was generated from the following file:
Generated on Mon Aug 25 14:40:00 2008 for OpenCASCADE by  doxygen 1.4.1