summaryrefslogtreecommitdiff
path: root/inc/TNaming_Identifier.hxx
blob: bacfb260e17bc9d0678d6482e3deee0c8d5f632b (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
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
// 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 _TNaming_Identifier_HeaderFile
#define _TNaming_Identifier_HeaderFile

#ifndef _Standard_HeaderFile
#include <Standard.hxx>
#endif
#ifndef _Standard_Macro_HeaderFile
#include <Standard_Macro.hxx>
#endif

#ifndef _TDF_Label_HeaderFile
#include <TDF_Label.hxx>
#endif
#ifndef _TopoDS_Shape_HeaderFile
#include <TopoDS_Shape.hxx>
#endif
#ifndef _Standard_Boolean_HeaderFile
#include <Standard_Boolean.hxx>
#endif
#ifndef _TNaming_NameType_HeaderFile
#include <TNaming_NameType.hxx>
#endif
#ifndef _Handle_TNaming_NamedShape_HeaderFile
#include <Handle_TNaming_NamedShape.hxx>
#endif
#ifndef _TNaming_ListOfNamedShape_HeaderFile
#include <TNaming_ListOfNamedShape.hxx>
#endif
#ifndef _TopTools_ListOfShape_HeaderFile
#include <TopTools_ListOfShape.hxx>
#endif
class TNaming_NamedShape;
class TDF_Label;
class TopoDS_Shape;
class TNaming_Localizer;



class TNaming_Identifier  {
public:

  void* operator new(size_t,void* anAddress) 
  {
    return anAddress;
  }
  void* operator new(size_t size) 
  {
    return Standard::Allocate(size); 
  }
  void  operator delete(void *anAddress) 
  {
    if (anAddress) Standard::Free((Standard_Address&)anAddress); 
  }

  
  Standard_EXPORT   TNaming_Identifier(const TDF_Label& Lab,const TopoDS_Shape& S,const TopoDS_Shape& Context,const Standard_Boolean Geom);
  
  Standard_EXPORT   TNaming_Identifier(const TDF_Label& Lab,const TopoDS_Shape& S,const Handle(TNaming_NamedShape)& Context,const Standard_Boolean Geom);
  
  Standard_EXPORT     Standard_Boolean IsDone() const;
  
  Standard_EXPORT     TNaming_NameType Type() const;
  
  Standard_EXPORT     Standard_Boolean IsFeature() ;
  
  Standard_EXPORT     Handle_TNaming_NamedShape Feature() const;
  
  Standard_EXPORT     void InitArgs() ;
  
  Standard_EXPORT     Standard_Boolean MoreArgs() const;
  
  Standard_EXPORT     void NextArg() ;
  
  Standard_EXPORT     Standard_Boolean ArgIsFeature() const;
  
  Standard_EXPORT     Handle_TNaming_NamedShape FeatureArg() ;
  
  Standard_EXPORT     TopoDS_Shape ShapeArg() ;
  
  Standard_EXPORT     TopoDS_Shape ShapeContext() const;
  
  Standard_EXPORT     Handle_TNaming_NamedShape NamedShapeOfGeneration() const;
  
  Standard_EXPORT     void AncestorIdentification(TNaming_Localizer& Localizer,const TopoDS_Shape& Context) ;
  
  Standard_EXPORT     void PrimitiveIdentification(TNaming_Localizer& Localizer,const Handle(TNaming_NamedShape)& NS) ;
  
  Standard_EXPORT     void GeneratedIdentification(TNaming_Localizer& Localizer,const Handle(TNaming_NamedShape)& NS) ;
  
  Standard_EXPORT     void Identification(TNaming_Localizer& Localizer,const Handle(TNaming_NamedShape)& NS) ;





protected:





private:



TDF_Label myTDFAcces;
TopoDS_Shape myShape;
Standard_Boolean myOneOnly;
Standard_Boolean myDone;
Standard_Boolean myIsFeature;
TNaming_NameType myType;
Handle_TNaming_NamedShape myFeature;
TNaming_ListOfNamedShape myPrimitiveArgs;
TopTools_ListOfShape myShapeArgs;
Handle_TNaming_NamedShape myNSContext;


};





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


#endif