This file is indexed.

/usr/include/oce/STEPCAFControl_Reader.hxx is in liboce-ocaf-dev 0.18.2-2build1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  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
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
// 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 _STEPCAFControl_Reader_HeaderFile
#define _STEPCAFControl_Reader_HeaderFile

#include <Standard.hxx>
#include <Standard_DefineAlloc.hxx>
#include <Standard_Macro.hxx>

#include <STEPControl_Reader.hxx>
#include <Handle_STEPCAFControl_DictionaryOfExternFile.hxx>
#include <Standard_Boolean.hxx>
#include <Handle_XSControl_WorkSession.hxx>
#include <IFSelect_ReturnStatus.hxx>
#include <Standard_CString.hxx>
#include <Standard_Integer.hxx>
#include <Handle_TDocStd_Document.hxx>
#include <Handle_STEPCAFControl_ExternFile.hxx>
#include <Handle_XCAFDoc_ShapeTool.hxx>
#include <Handle_TColStd_HSequenceOfTransient.hxx>
#include <Handle_StepRepr_RepresentationItem.hxx>
#include <Handle_Transfer_TransientProcess.hxx>
#include <Handle_StepShape_ConnectedFaceSet.hxx>
#include <Handle_StepRepr_NextAssemblyUsageOccurrence.hxx>
class STEPCAFControl_DictionaryOfExternFile;
class XSControl_WorkSession;
class TDocStd_Document;
class TCollection_AsciiString;
class STEPCAFControl_ExternFile;
class STEPControl_Reader;
class TDF_LabelSequence;
class TDF_Label;
class TopoDS_Shape;
class XCAFDoc_ShapeTool;
class TopTools_MapOfShape;
class STEPCAFControl_DataMapOfShapePD;
class STEPCAFControl_DataMapOfPDExternFile;
class XCAFDoc_DataMapOfShapeLabel;
class TColStd_HSequenceOfTransient;
class StepRepr_RepresentationItem;
class Transfer_TransientProcess;
class StepShape_ConnectedFaceSet;
class StepRepr_NextAssemblyUsageOccurrence;
class STEPConstruct_Tool;


//! Provides a tool to read STEP file and put it into
//! DECAF document. Besides transfer of shapes (including
//! assemblies) provided by STEPControl, supports also
//! colors and part names
//!
//! This reader supports reading files with external references
//! i.e. multifile reading
//! It behaves as usual Reader (from STEPControl) for the main
//! file (e.g. if it is single file)
//! Results of reading other files can be accessed by name of the
//! file or by iterating on a readers
class STEPCAFControl_Reader 
{
public:

  DEFINE_STANDARD_ALLOC

  
  //! Creates a reader with an empty
  //! STEP model and sets ColorMode, LayerMode, NameMode and
  //! PropsMode to Standard_True.
  Standard_EXPORT STEPCAFControl_Reader();
  
  //! Creates a reader tool and attaches it to an already existing Session
  //! Clears the session if it was not yet set for STEP
  Standard_EXPORT STEPCAFControl_Reader(const Handle(XSControl_WorkSession)& WS, const Standard_Boolean scratch = Standard_True);
  
  //! Clears the internal data structures and attaches to a new session
  //! Clears the session if it was not yet set for STEP
  Standard_EXPORT   void Init (const Handle(XSControl_WorkSession)& WS, const Standard_Boolean scratch = Standard_True) ;
  
  //! Loads a file and returns the read status
  //! Provided for use like single-file reader
  Standard_EXPORT   IFSelect_ReturnStatus ReadFile (const Standard_CString filename) ;
  
  //! Returns number of roots recognized for transfer
  //! Shortcut for Reader().NbRootsForTransfer()
  Standard_EXPORT   Standard_Integer NbRootsForTransfer() ;
  
  //! Translates currently loaded STEP file into the document
  //! Returns True if succeeded, and False in case of fail
  //! Provided for use like single-file reader
  Standard_EXPORT   Standard_Boolean TransferOneRoot (const Standard_Integer num, Handle(TDocStd_Document)& doc) ;
  
  //! Translates currently loaded STEP file into the document
  //! Returns True if succeeded, and False in case of fail
  //! Provided for use like single-file reader
  Standard_EXPORT   Standard_Boolean Transfer (Handle(TDocStd_Document)& doc) ;
  
  Standard_EXPORT   Standard_Boolean Perform (const TCollection_AsciiString& filename, Handle(TDocStd_Document)& doc) ;
  
  //! Translate STEP file given by filename into the document
  //! Return True if succeeded, and False in case of fail
  Standard_EXPORT   Standard_Boolean Perform (const Standard_CString filename, Handle(TDocStd_Document)& doc) ;
  
  //! Returns data on external files
  //! Returns Null handle if no external files are read
  Standard_EXPORT  const  Handle(STEPCAFControl_DictionaryOfExternFile)& ExternFiles()  const;
  
  //! Returns data on external file by its name
  //! Returns False if no external file with given name is read
  Standard_EXPORT   Standard_Boolean ExternFile (const Standard_CString name, Handle(STEPCAFControl_ExternFile)& ef)  const;
  
  //! Returns basic reader
  Standard_EXPORT   STEPControl_Reader& ChangeReader() ;
  
  //! Returns basic reader as const
  Standard_EXPORT  const  STEPControl_Reader& Reader()  const;
  
  //! Returns label of instance of an assembly component
  //! corresponding to a given NAUO
  Standard_EXPORT static   TDF_Label FindInstance (const Handle(StepRepr_NextAssemblyUsageOccurrence)& NAUO, const Handle(XCAFDoc_ShapeTool)& STool, const STEPConstruct_Tool& Tool, const STEPCAFControl_DataMapOfPDExternFile& PDRFileMap, const XCAFDoc_DataMapOfShapeLabel& ShapeLabelMap) ;
  
  //! Set ColorMode for indicate read Colors or not.
  Standard_EXPORT   void SetColorMode (const Standard_Boolean colormode) ;
  
  Standard_EXPORT   Standard_Boolean GetColorMode()  const;
  
  //! Set NameMode for indicate read Name or not.
  Standard_EXPORT   void SetNameMode (const Standard_Boolean namemode) ;
  
  Standard_EXPORT   Standard_Boolean GetNameMode()  const;
  
  //! Set LayerMode for indicate read Layers or not.
  Standard_EXPORT   void SetLayerMode (const Standard_Boolean layermode) ;
  
  Standard_EXPORT   Standard_Boolean GetLayerMode()  const;
  
  //! PropsMode for indicate read Validation properties or not.
  Standard_EXPORT   void SetPropsMode (const Standard_Boolean propsmode) ;
  
  Standard_EXPORT   Standard_Boolean GetPropsMode()  const;
  
  //! Set SHUO mode for indicate write SHUO or not.
  Standard_EXPORT   void SetSHUOMode (const Standard_Boolean shuomode) ;
  
  Standard_EXPORT   Standard_Boolean GetSHUOMode()  const;
  
  //! Set GDT mode for indicate write GDT or not.
  Standard_EXPORT   void SetGDTMode (const Standard_Boolean gdtmode) ;
  
  Standard_EXPORT   Standard_Boolean GetGDTMode()  const;
  
  //! Set Material mode
  Standard_EXPORT   void SetMatMode (const Standard_Boolean matmode) ;
  
  Standard_EXPORT   Standard_Boolean GetMatMode()  const;




protected:

  
  //! Translates STEP file already loaded into the reader
  //! into the document
  //! If num==0, translates all roots, else only root number num
  //! Returns True if succeeded, and False in case of fail
  //! If asOne is True, in case of multiple results composes
  //! them into assembly. Fills sequence of produced labels
  Standard_EXPORT   Standard_Boolean Transfer (STEPControl_Reader& rd, const Standard_Integer num, Handle(TDocStd_Document)& doc, TDF_LabelSequence& Lseq, const Standard_Boolean asOne = Standard_False) ;
  
  //! Add a shape to a document
  //! Depending on a case, this shape can be added as one, or
  //! as assembly, or (in case if it is associated with external
  //! reference) taken as that referred shape
  Standard_EXPORT   TDF_Label AddShape (const TopoDS_Shape& S, const Handle(XCAFDoc_ShapeTool)& STool, const TopTools_MapOfShape& NewShapesMap, const STEPCAFControl_DataMapOfShapePD& ShapePDMap, const STEPCAFControl_DataMapOfPDExternFile& PDFileMap, XCAFDoc_DataMapOfShapeLabel& ShapeLabelMap)  const;
  
  //! Reads (or if returns already read) extern file with
  //! given name
  Standard_EXPORT   Handle(STEPCAFControl_ExternFile) ReadExternFile (const Standard_CString file, const Standard_CString fullpath, Handle(TDocStd_Document)& doc) ;
  
  //! Reads style assignments from STEP model and sets
  //! corresponding color assignments in the DECAF document
  Standard_EXPORT   Standard_Boolean ReadColors (const Handle(XSControl_WorkSession)& WS, Handle(TDocStd_Document)& doc, const STEPCAFControl_DataMapOfPDExternFile& PDFileMap, const XCAFDoc_DataMapOfShapeLabel& ShapeLabelMap)  const;
  
  //! Reads names of parts defined in the STEP model and
  //! assigns them to corresponding labels in the DECAF document
  Standard_EXPORT   Standard_Boolean ReadNames (const Handle(XSControl_WorkSession)& WS, Handle(TDocStd_Document)& doc, const STEPCAFControl_DataMapOfPDExternFile& PDFileMap, const XCAFDoc_DataMapOfShapeLabel& ShapeLabelMap)  const;
  
  //! Reads validation properties assigned to shapes in the STEP
  //! model and assigns them to corresponding labels in the DECAF
  //! document
  Standard_EXPORT   Standard_Boolean ReadValProps (const Handle(XSControl_WorkSession)& WS, Handle(TDocStd_Document)& doc, const STEPCAFControl_DataMapOfPDExternFile& PDFileMap, const XCAFDoc_DataMapOfShapeLabel& ShapeLabelMap)  const;
  
  //! Reads layers of parts defined in the STEP model and
  //! set reference between shape and layers in the DECAF document
  Standard_EXPORT   Standard_Boolean ReadLayers (const Handle(XSControl_WorkSession)& WS, Handle(TDocStd_Document)& doc)  const;
  
  //! Reads SHUO for instances defined in the STEP model and
  //! set reference between shape instances from different assemblyes
  Standard_EXPORT   Standard_Boolean ReadSHUOs (const Handle(XSControl_WorkSession)& WS, Handle(TDocStd_Document)& doc, const STEPCAFControl_DataMapOfPDExternFile& PDFileMap, const XCAFDoc_DataMapOfShapeLabel& ShapeLabelMap)  const;
  
  //! Reads D&GT for instances defined in the STEP model and
  //! set reference between shape instances from different assemblyes
  Standard_EXPORT   Standard_Boolean ReadGDTs (const Handle(XSControl_WorkSession)& WS, Handle(TDocStd_Document)& doc)  const;
  
  //! Reads materials for instances defined in the STEP model and
  //! set reference between shape instances from different assemblyes
  Standard_EXPORT   Standard_Boolean ReadMaterials (const Handle(XSControl_WorkSession)& WS, Handle(TDocStd_Document)& doc, const Handle(TColStd_HSequenceOfTransient)& SeqPDS)  const;
  
  //! Populates the sub-Label of the passed TDF Label with shape
  //! data associated with the given STEP Representation Item,
  //! including naming and topological information.
  Standard_EXPORT   TDF_Label SettleShapeData (const Handle(StepRepr_RepresentationItem)& theItem, TDF_Label& theLab, const Handle(XCAFDoc_ShapeTool)& theShapeTool, const Handle(Transfer_TransientProcess)& theTP)  const;
  
  //! Given the maps of already translated shapes, this method
  //! expands their correspondent Labels in XDE Document so that
  //! to have a dedicated sub-Label for each sub-shape coming
  //! with associated name in its STEP Representation Item.
  Standard_EXPORT   void ExpandSubShapes (const Handle(XCAFDoc_ShapeTool)& theShapeTool, const XCAFDoc_DataMapOfShapeLabel& theShapeLabelMap, const STEPCAFControl_DataMapOfShapePD& theShapePDMap)  const;
  
  //! Expands the topological structure of Manifold Solid BRep
  //! STEP entity to OCAF sub-tree. Entities having no names
  //! associated via their Representation Items are skipped.
  Standard_EXPORT   void ExpandManifoldSolidBrep (TDF_Label& theLab, const Handle(StepRepr_RepresentationItem)& theItem, const Handle(Transfer_TransientProcess)& theTP, const Handle(XCAFDoc_ShapeTool)& theShapeTool)  const;
  
  //! Expands the topological structure of Shell-Based Surface
  //! Model STEP entity to OCAF sub-tree. Entities having no names
  //! associated via their Representation Items are skipped.
  Standard_EXPORT   void ExpandSBSM (TDF_Label& theLab, const Handle(StepRepr_RepresentationItem)& theItem, const Handle(Transfer_TransientProcess)& theTP, const Handle(XCAFDoc_ShapeTool)& theShapeTool)  const;
  
  //! Expands STEP Shell structure to OCAF sub-tree. Entities
  //! having no names associated via their Representation Items
  //! are skipped.
  Standard_EXPORT   void ExpandShell (const Handle(StepShape_ConnectedFaceSet)& theShell, TDF_Label& theLab, const Handle(Transfer_TransientProcess)& theTP, const Handle(XCAFDoc_ShapeTool)& theShapeTool)  const;




private:



  STEPControl_Reader myReader;
  Handle(STEPCAFControl_DictionaryOfExternFile) myFiles;
  Standard_Boolean myColorMode;
  Standard_Boolean myNameMode;
  Standard_Boolean myLayerMode;
  Standard_Boolean myPropsMode;
  Standard_Boolean mySHUOMode;
  Standard_Boolean myGDTMode;
  Standard_Boolean myMatMode;


};







#endif // _STEPCAFControl_Reader_HeaderFile