0027104: DownCast() cannot return null for mismatched handle
[occt.git] / src / IGESAppli / IGESAppli.hxx
1 // Created on: 1993-01-11
2 // Created by: CKY / Contract Toubro-Larsen (Anand NATRAJAN)
3 // Copyright (c) 1993-1999 Matra Datavision
4 // Copyright (c) 1999-2014 OPEN CASCADE SAS
5 //
6 // This file is part of Open CASCADE Technology software library.
7 //
8 // This library is free software; you can redistribute it and/or modify it under
9 // the terms of the GNU Lesser General Public License version 2.1 as published
10 // by the Free Software Foundation, with special exception defined in the file
11 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12 // distribution for complete text of the license and disclaimer of any warranty.
13 //
14 // Alternatively, this file may be used under the terms of Open CASCADE
15 // commercial license or contractual agreement.
16
17 #ifndef _IGESAppli_HeaderFile
18 #define _IGESAppli_HeaderFile
19
20 #include <Standard.hxx>
21 #include <Standard_DefineAlloc.hxx>
22 #include <Standard_Handle.hxx>
23
24 class IGESAppli_Protocol;
25 class IGESAppli_Node;
26 class IGESAppli_FiniteElement;
27 class IGESAppli_NodalDisplAndRot;
28 class IGESAppli_NodalResults;
29 class IGESAppli_ElementResults;
30 class IGESAppli_Flow;
31 class IGESAppli_PipingFlow;
32 class IGESAppli_RegionRestriction;
33 class IGESAppli_LevelFunction;
34 class IGESAppli_LineWidening;
35 class IGESAppli_DrilledHole;
36 class IGESAppli_ReferenceDesignator;
37 class IGESAppli_PinNumber;
38 class IGESAppli_PartNumber;
39 class IGESAppli_FlowLineSpec;
40 class IGESAppli_LevelToPWBLayerMap;
41 class IGESAppli_PWBArtworkStackup;
42 class IGESAppli_PWBDrilledHole;
43 class IGESAppli_NodalConstraint;
44 class IGESAppli_ToolNode;
45 class IGESAppli_ToolFiniteElement;
46 class IGESAppli_ToolNodalDisplAndRot;
47 class IGESAppli_ToolNodalResults;
48 class IGESAppli_ToolElementResults;
49 class IGESAppli_ToolFlow;
50 class IGESAppli_ToolPipingFlow;
51 class IGESAppli_ToolRegionRestriction;
52 class IGESAppli_ToolLevelFunction;
53 class IGESAppli_ToolLineWidening;
54 class IGESAppli_ToolDrilledHole;
55 class IGESAppli_ToolReferenceDesignator;
56 class IGESAppli_ToolPinNumber;
57 class IGESAppli_ToolPartNumber;
58 class IGESAppli_ToolFlowLineSpec;
59 class IGESAppli_ToolLevelToPWBLayerMap;
60 class IGESAppli_ToolPWBArtworkStackup;
61 class IGESAppli_ToolPWBDrilledHole;
62 class IGESAppli_ToolNodalConstraint;
63 class IGESAppli_Protocol;
64 class IGESAppli_ReadWriteModule;
65 class IGESAppli_GeneralModule;
66 class IGESAppli_SpecificModule;
67
68
69 //! This package represents collection of miscellaneous
70 //! entities from IGES
71 class IGESAppli 
72 {
73 public:
74
75   DEFINE_STANDARD_ALLOC
76
77   
78   //! Prepares dynamic data (Protocol, Modules) for this package
79   Standard_EXPORT static void Init();
80   
81   //! Returns the Protocol for this Package
82   Standard_EXPORT static Handle(IGESAppli_Protocol) Protocol();
83
84
85
86
87 protected:
88
89
90
91
92
93 private:
94
95
96
97
98 friend class IGESAppli_Node;
99 friend class IGESAppli_FiniteElement;
100 friend class IGESAppli_NodalDisplAndRot;
101 friend class IGESAppli_NodalResults;
102 friend class IGESAppli_ElementResults;
103 friend class IGESAppli_Flow;
104 friend class IGESAppli_PipingFlow;
105 friend class IGESAppli_RegionRestriction;
106 friend class IGESAppli_LevelFunction;
107 friend class IGESAppli_LineWidening;
108 friend class IGESAppli_DrilledHole;
109 friend class IGESAppli_ReferenceDesignator;
110 friend class IGESAppli_PinNumber;
111 friend class IGESAppli_PartNumber;
112 friend class IGESAppli_FlowLineSpec;
113 friend class IGESAppli_LevelToPWBLayerMap;
114 friend class IGESAppli_PWBArtworkStackup;
115 friend class IGESAppli_PWBDrilledHole;
116 friend class IGESAppli_NodalConstraint;
117 friend class IGESAppli_ToolNode;
118 friend class IGESAppli_ToolFiniteElement;
119 friend class IGESAppli_ToolNodalDisplAndRot;
120 friend class IGESAppli_ToolNodalResults;
121 friend class IGESAppli_ToolElementResults;
122 friend class IGESAppli_ToolFlow;
123 friend class IGESAppli_ToolPipingFlow;
124 friend class IGESAppli_ToolRegionRestriction;
125 friend class IGESAppli_ToolLevelFunction;
126 friend class IGESAppli_ToolLineWidening;
127 friend class IGESAppli_ToolDrilledHole;
128 friend class IGESAppli_ToolReferenceDesignator;
129 friend class IGESAppli_ToolPinNumber;
130 friend class IGESAppli_ToolPartNumber;
131 friend class IGESAppli_ToolFlowLineSpec;
132 friend class IGESAppli_ToolLevelToPWBLayerMap;
133 friend class IGESAppli_ToolPWBArtworkStackup;
134 friend class IGESAppli_ToolPWBDrilledHole;
135 friend class IGESAppli_ToolNodalConstraint;
136 friend class IGESAppli_Protocol;
137 friend class IGESAppli_ReadWriteModule;
138 friend class IGESAppli_GeneralModule;
139 friend class IGESAppli_SpecificModule;
140
141 };
142
143
144
145
146
147
148
149 #endif // _IGESAppli_HeaderFile