summaryrefslogtreecommitdiff
path: root/inc/IGESControl_Controller.hxx
blob: 124629e39dd1c823165a9df437a12638809e75fe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
// 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 _IGESControl_Controller_HeaderFile
#define _IGESControl_Controller_HeaderFile

#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_DefineHandle_HeaderFile
#include <Standard_DefineHandle.hxx>
#endif
#ifndef _Handle_IGESControl_Controller_HeaderFile
#include <Handle_IGESControl_Controller.hxx>
#endif

#ifndef _Standard_Boolean_HeaderFile
#include <Standard_Boolean.hxx>
#endif
#ifndef _XSControl_Controller_HeaderFile
#include <XSControl_Controller.hxx>
#endif
#ifndef _Handle_Interface_InterfaceModel_HeaderFile
#include <Handle_Interface_InterfaceModel.hxx>
#endif
#ifndef _Handle_Transfer_ActorOfTransientProcess_HeaderFile
#include <Handle_Transfer_ActorOfTransientProcess.hxx>
#endif
#ifndef _IFSelect_ReturnStatus_HeaderFile
#include <IFSelect_ReturnStatus.hxx>
#endif
#ifndef _Handle_Transfer_FinderProcess_HeaderFile
#include <Handle_Transfer_FinderProcess.hxx>
#endif
#ifndef _Standard_Integer_HeaderFile
#include <Standard_Integer.hxx>
#endif
#ifndef _Handle_XSControl_WorkSession_HeaderFile
#include <Handle_XSControl_WorkSession.hxx>
#endif
class Interface_InterfaceModel;
class Transfer_ActorOfTransientProcess;
class TopoDS_Shape;
class Transfer_FinderProcess;
class XSControl_WorkSession;


//! Controller for IGES-5.1 <br>
class IGESControl_Controller : public XSControl_Controller {

public:

  //! Initializes the use of IGES Norm (the first time) and returns <br>
//!           a Controller for IGES-5.1 <br>
//!           If <modefnes> is True, sets it to internal FNES format <br>
  Standard_EXPORT   IGESControl_Controller(const Standard_Boolean modefnes = Standard_False);
  //! Creates a new empty Model ready to receive data of the Norm. <br>
//!           It is taken from IGES Template Model <br>
  Standard_EXPORT     Handle_Interface_InterfaceModel NewModel() const;
  //! Returns the Actor for Read attached to the pair (norm,appli) <br>
//!           It is an Actor from IGESToBRep, adapted from an IGESModel : <br>
//!           Unit, tolerances <br>
  Standard_EXPORT     Handle_Transfer_ActorOfTransientProcess ActorRead(const Handle(Interface_InterfaceModel)& model) const;
  //! Takes one Shape and transfers it to the InterfaceModel <br>
//!           (already created by NewModel for instance) <br>
//!           <modetrans> is to be interpreted by each kind of XstepAdaptor <br>
//!           Returns a status : 0 OK  1 No result  2 Fail  -1 bad modeshape <br>
//!               -2 bad model (requires an IGESModel) <br>
//!           modeshape : 0  groupe of face (version < 5.1) <br>
//!                       1  BREP-version 5.1 of IGES <br>
  Standard_EXPORT   virtual  IFSelect_ReturnStatus TransferWriteShape(const TopoDS_Shape& shape,const Handle(Transfer_FinderProcess)& FP,const Handle(Interface_InterfaceModel)& model,const Standard_Integer modetrans = 0) const;
  //! Standard Initialisation. It creates a Controller for IGES and <br>
//!           records it to various names, available to select it later <br>
//!           Returns True when done, False if could not be done <br>
//!           Also, it creates and records an Adaptor for FNES <br>
  Standard_EXPORT   static  Standard_Boolean Init() ;
  
  Standard_EXPORT   virtual  void Customise(Handle(XSControl_WorkSession)& WS) ;




  DEFINE_STANDARD_RTTI(IGESControl_Controller)

protected:




private: 


Standard_Boolean themode;


};





// other Inline functions and methods (like "C++: function call" methods)


#endif