0024275: Cppcheck warnings on uninitialized class members
[occt.git] / src / PTopoDS / PTopoDS_TShape.cxx
1 // Created on: 1993-03-09
2 // Created by: Remi LEQUETTE
3 // Copyright (c) 1993-1999 Matra Datavision
4 // Copyright (c) 1999-2012 OPEN CASCADE SAS
5 //
6 // The content of this file is subject to the Open CASCADE Technology Public
7 // License Version 6.5 (the "License"). You may not use the content of this file
8 // except in compliance with the License. Please obtain a copy of the License
9 // at http://www.opencascade.org and read it completely before using this file.
10 //
11 // The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12 // main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
13 //
14 // The Original Code and all software distributed under the License is
15 // distributed on an "AS IS" basis, without warranty of any kind, and the
16 // Initial Developer hereby disclaims all such warranties, including without
17 // limitation, any warranties of merchantability, fitness for a particular
18 // purpose or non-infringement. Please see the License for the specific terms
19 // and conditions governing the rights and limitations under the License.
20
21
22 #include <PTopoDS_TShape.ixx>
23
24 // static const Standard_Integer FreeMask       = 1;
25 // FreeMask has no sense in D.B. context; it is free for future use.
26 static const Standard_Integer ModifiedMask   = 2;
27 static const Standard_Integer CheckedMask    = 4;
28 static const Standard_Integer OrientableMask = 8;
29 static const Standard_Integer ClosedMask     = 16;
30 static const Standard_Integer InfiniteMask   = 32;
31 static const Standard_Integer ConvexMask     = 64;
32
33
34 //=======================================================================
35 //function : PTopoDS_TShape
36 //purpose  : 
37 //=======================================================================
38
39 PTopoDS_TShape::PTopoDS_TShape() : myFlags(0)
40 {
41   // UPDATE FMA - 28-11-95
42   // These two flags are always set to the Transient Value
43   //Modified(Standard_True);
44   //Orientable(Standard_True);
45 }
46
47
48 //=======================================================================
49 //function : Modified
50 //purpose  : 
51 //=======================================================================
52
53 Standard_Boolean  PTopoDS_TShape::Modified() const 
54 {
55   return myFlags & ModifiedMask;
56 }
57
58 //=======================================================================
59 //function : Modified
60 //purpose  : 
61 //=======================================================================
62
63 void  PTopoDS_TShape::Modified(const Standard_Boolean M)
64 {
65   if (M) myFlags |= ModifiedMask;
66   else   myFlags &= ~ModifiedMask;
67 }
68
69 //=======================================================================
70 //function : Checked
71 //purpose  : 
72 //=======================================================================
73
74 Standard_Boolean  PTopoDS_TShape::Checked() const 
75 {
76   return myFlags & CheckedMask;
77 }
78
79 //=======================================================================
80 //function : Checked
81 //purpose  : 
82 //=======================================================================
83
84 void  PTopoDS_TShape::Checked(const Standard_Boolean M)
85 {
86   if (M) myFlags |= CheckedMask;
87   else   myFlags &= ~CheckedMask;
88 }
89
90 //=======================================================================
91 //function : Orientable
92 //purpose  : 
93 //=======================================================================
94
95 Standard_Boolean  PTopoDS_TShape::Orientable() const 
96 {
97   return myFlags & OrientableMask;
98 }
99
100 //=======================================================================
101 //function : Orientable
102 //purpose  : 
103 //=======================================================================
104
105 void  PTopoDS_TShape::Orientable(const Standard_Boolean M)
106 {
107   if (M) myFlags |= OrientableMask;
108   else   myFlags &= ~OrientableMask;
109 }
110
111 //=======================================================================
112 //function : Closed
113 //purpose  : 
114 //=======================================================================
115
116 Standard_Boolean  PTopoDS_TShape::Closed() const 
117 {
118   return myFlags & ClosedMask;
119 }
120
121 //=======================================================================
122 //function : Closed
123 //purpose  : 
124 //=======================================================================
125
126 void  PTopoDS_TShape::Closed(const Standard_Boolean M)
127 {
128   if (M) myFlags |= ClosedMask;
129   else   myFlags &= ~ClosedMask;
130 }
131
132 //=======================================================================
133 //function : Infinite
134 //purpose  : 
135 //=======================================================================
136
137 Standard_Boolean  PTopoDS_TShape::Infinite() const 
138 {
139   return myFlags & InfiniteMask;
140 }
141
142 //=======================================================================
143 //function : Infinite
144 //purpose  : 
145 //=======================================================================
146
147 void  PTopoDS_TShape::Infinite(const Standard_Boolean M)
148 {
149   if (M) myFlags |= InfiniteMask;
150   else   myFlags &= ~InfiniteMask;
151 }
152
153 //=======================================================================
154 //function : Convex
155 //purpose  : 
156 //=======================================================================
157
158 Standard_Boolean  PTopoDS_TShape::Convex() const 
159 {
160   return myFlags & ConvexMask;
161 }
162
163 //=======================================================================
164 //function : Convex
165 //purpose  : 
166 //=======================================================================
167
168 void  PTopoDS_TShape::Convex(const Standard_Boolean M)
169 {
170   if (M) myFlags |= ConvexMask;
171   else   myFlags &= ~ConvexMask;
172 }
173
174
175 //=======================================================================
176 //function : Shapes
177 //purpose  : returns the array of sub-shapes
178 //=======================================================================
179
180 Handle(PTopoDS_HArray1OfHShape) PTopoDS_TShape::Shapes() const
181 {
182   return myShapes;
183 }
184
185 //=======================================================================
186 //function : Shapes
187 //purpose  : returns the Ith element of the array of sub-shapes
188 //=======================================================================
189
190 Handle(PTopoDS_HShape)
191 PTopoDS_TShape::Shapes(const Standard_Integer i) const
192 {
193   return myShapes->Value(i);
194 }
195
196 //=======================================================================
197 //function : Shapes
198 //purpose  : Sets the array of sub-shapes
199 //=======================================================================
200
201 void PTopoDS_TShape::Shapes(const Handle(PTopoDS_HArray1OfHShape)& S)
202 {
203   myShapes = S;
204 }
205
206 //=======================================================================
207 //function : Shapes
208 //purpose  : Sets the Ith element of the array of sub-shapes
209 //=======================================================================
210
211 void PTopoDS_TShape::Shapes(const Standard_Integer i,
212                             const Handle(PTopoDS_HShape)& S)
213 {
214   myShapes->SetValue(i, S);
215 }
216