0031642: Visualization - crash in Graphic3d_Structure::SetVisual() on redisplaying...
[occt.git] / src / StepBasic / StepBasic_Person.cxx
1 // Copyright (c) 1999-2014 OPEN CASCADE SAS
2 //
3 // This file is part of Open CASCADE Technology software library.
4 //
5 // This library is free software; you can redistribute it and/or modify it under
6 // the terms of the GNU Lesser General Public License version 2.1 as published
7 // by the Free Software Foundation, with special exception defined in the file
8 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
9 // distribution for complete text of the license and disclaimer of any warranty.
10 //
11 // Alternatively, this file may be used under the terms of Open CASCADE
12 // commercial license or contractual agreement.
13
14
15 #include <Standard_Type.hxx>
16 #include <StepBasic_Person.hxx>
17 #include <TCollection_HAsciiString.hxx>
18
19 IMPLEMENT_STANDARD_RTTIEXT(StepBasic_Person,Standard_Transient)
20
21 StepBasic_Person::StepBasic_Person ()  {}
22
23 void StepBasic_Person::Init(
24         const Handle(TCollection_HAsciiString)& aId,
25         const Standard_Boolean hasAlastName,
26         const Handle(TCollection_HAsciiString)& aLastName,
27         const Standard_Boolean hasAfirstName,
28         const Handle(TCollection_HAsciiString)& aFirstName,
29         const Standard_Boolean hasAmiddleNames,
30         const Handle(Interface_HArray1OfHAsciiString)& aMiddleNames,
31         const Standard_Boolean hasAprefixTitles,
32         const Handle(Interface_HArray1OfHAsciiString)& aPrefixTitles,
33         const Standard_Boolean hasAsuffixTitles,
34         const Handle(Interface_HArray1OfHAsciiString)& aSuffixTitles)
35 {
36         // --- classe own fields ---
37         id = aId;
38         hasLastName = hasAlastName;
39         lastName = aLastName;
40         hasFirstName = hasAfirstName;
41         firstName = aFirstName;
42         hasMiddleNames = hasAmiddleNames;
43         middleNames = aMiddleNames;
44         hasPrefixTitles = hasAprefixTitles;
45         prefixTitles = aPrefixTitles;
46         hasSuffixTitles = hasAsuffixTitles;
47         suffixTitles = aSuffixTitles;
48 }
49
50
51 void StepBasic_Person::SetId(const Handle(TCollection_HAsciiString)& aId)
52 {
53         id = aId;
54 }
55
56 Handle(TCollection_HAsciiString) StepBasic_Person::Id() const
57 {
58         return id;
59 }
60
61 void StepBasic_Person::SetLastName(const Handle(TCollection_HAsciiString)& aLastName)
62 {
63         lastName = aLastName;
64         hasLastName = Standard_True;
65 }
66
67 void StepBasic_Person::UnSetLastName()
68 {
69         hasLastName = Standard_False;
70         lastName.Nullify();
71 }
72
73 Handle(TCollection_HAsciiString) StepBasic_Person::LastName() const
74 {
75         return lastName;
76 }
77
78 Standard_Boolean StepBasic_Person::HasLastName() const
79 {
80         return hasLastName;
81 }
82
83 void StepBasic_Person::SetFirstName(const Handle(TCollection_HAsciiString)& aFirstName)
84 {
85         firstName = aFirstName;
86         hasFirstName = Standard_True;
87 }
88
89 void StepBasic_Person::UnSetFirstName()
90 {
91         hasFirstName = Standard_False;
92         firstName.Nullify();
93 }
94
95 Handle(TCollection_HAsciiString) StepBasic_Person::FirstName() const
96 {
97         return firstName;
98 }
99
100 Standard_Boolean StepBasic_Person::HasFirstName() const
101 {
102         return hasFirstName;
103 }
104
105 void StepBasic_Person::SetMiddleNames(const Handle(Interface_HArray1OfHAsciiString)& aMiddleNames)
106 {
107         middleNames = aMiddleNames;
108         hasMiddleNames = Standard_True;
109 }
110
111 void StepBasic_Person::UnSetMiddleNames()
112 {
113         hasMiddleNames = Standard_False;
114         middleNames.Nullify();
115 }
116
117 Handle(Interface_HArray1OfHAsciiString) StepBasic_Person::MiddleNames() const
118 {
119         return middleNames;
120 }
121
122 Standard_Boolean StepBasic_Person::HasMiddleNames() const
123 {
124         return hasMiddleNames;
125 }
126
127 Handle(TCollection_HAsciiString) StepBasic_Person::MiddleNamesValue(const Standard_Integer num) const
128 {
129         return middleNames->Value(num);
130 }
131
132 Standard_Integer StepBasic_Person::NbMiddleNames () const
133 {
134         if (middleNames.IsNull()) return 0;
135         return middleNames->Length();
136 }
137
138 void StepBasic_Person::SetPrefixTitles(const Handle(Interface_HArray1OfHAsciiString)& aPrefixTitles)
139 {
140         prefixTitles = aPrefixTitles;
141         hasPrefixTitles = Standard_True;
142 }
143
144 void StepBasic_Person::UnSetPrefixTitles()
145 {
146         hasPrefixTitles = Standard_False;
147         prefixTitles.Nullify();
148 }
149
150 Handle(Interface_HArray1OfHAsciiString) StepBasic_Person::PrefixTitles() const
151 {
152         return prefixTitles;
153 }
154
155 Standard_Boolean StepBasic_Person::HasPrefixTitles() const
156 {
157         return hasPrefixTitles;
158 }
159
160 Handle(TCollection_HAsciiString) StepBasic_Person::PrefixTitlesValue(const Standard_Integer num) const
161 {
162         return prefixTitles->Value(num);
163 }
164
165 Standard_Integer StepBasic_Person::NbPrefixTitles () const
166 {
167         if (prefixTitles.IsNull()) return 0;
168         return prefixTitles->Length();
169 }
170
171 void StepBasic_Person::SetSuffixTitles(const Handle(Interface_HArray1OfHAsciiString)& aSuffixTitles)
172 {
173         suffixTitles = aSuffixTitles;
174         hasSuffixTitles = Standard_True;
175 }
176
177 void StepBasic_Person::UnSetSuffixTitles()
178 {
179         hasSuffixTitles = Standard_False;
180         suffixTitles.Nullify();
181 }
182
183 Handle(Interface_HArray1OfHAsciiString) StepBasic_Person::SuffixTitles() const
184 {
185         return suffixTitles;
186 }
187
188 Standard_Boolean StepBasic_Person::HasSuffixTitles() const
189 {
190         return hasSuffixTitles;
191 }
192
193 Handle(TCollection_HAsciiString) StepBasic_Person::SuffixTitlesValue(const Standard_Integer num) const
194 {
195         return suffixTitles->Value(num);
196 }
197
198 Standard_Integer StepBasic_Person::NbSuffixTitles () const
199 {
200         if (suffixTitles.IsNull()) return 0;
201         return suffixTitles->Length();
202 }