72f766ac329fbb8bb7e321bea745696a171c4e36
[occt.git] / src / RWStepBasic / RWStepBasic_RWApplicationContextElement.cxx
1 // Copyright (c) 1999-2012 OPEN CASCADE SAS
2 //
3 // The content of this file is subject to the Open CASCADE Technology Public
4 // License Version 6.5 (the "License"). You may not use the content of this file
5 // except in compliance with the License. Please obtain a copy of the License
6 // at http://www.opencascade.org and read it completely before using this file.
7 //
8 // The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
9 // main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
10 //
11 // The Original Code and all software distributed under the License is
12 // distributed on an "AS IS" basis, without warranty of any kind, and the
13 // Initial Developer hereby disclaims all such warranties, including without
14 // limitation, any warranties of merchantability, fitness for a particular
15 // purpose or non-infringement. Please see the License for the specific terms
16 // and conditions governing the rights and limitations under the License.
17
18
19 #include <RWStepBasic_RWApplicationContextElement.ixx>
20 #include <StepBasic_ApplicationContext.hxx>
21
22
23 #include <Interface_EntityIterator.hxx>
24
25
26 #include <StepBasic_ApplicationContextElement.hxx>
27
28
29 RWStepBasic_RWApplicationContextElement::RWStepBasic_RWApplicationContextElement () {}
30
31 void RWStepBasic_RWApplicationContextElement::ReadStep
32         (const Handle(StepData_StepReaderData)& data,
33          const Standard_Integer num,
34          Handle(Interface_Check)& ach,
35          const Handle(StepBasic_ApplicationContextElement)& ent) const
36 {
37
38
39         // --- Number of Parameter Control ---
40
41         if (!data->CheckNbParams(num,2,ach,"application_context_element")) return;
42
43         // --- own field : name ---
44
45         Handle(TCollection_HAsciiString) aName;
46         //szv#4:S4163:12Mar99 `Standard_Boolean stat1 =` not needed
47         data->ReadString (num,1,"name",ach,aName);
48
49         // --- own field : frameOfReference ---
50
51         Handle(StepBasic_ApplicationContext) aFrameOfReference;
52 #ifdef DEB
53         Standard_Boolean stat2 = 
54 #endif
55           data->ReadEntity(num, 2,"frame_of_reference", ach, STANDARD_TYPE(StepBasic_ApplicationContext), aFrameOfReference);
56
57         //--- Initialisation of the read entity ---
58
59
60         ent->Init(aName, aFrameOfReference);
61 }
62
63
64 void RWStepBasic_RWApplicationContextElement::WriteStep
65         (StepData_StepWriter& SW,
66          const Handle(StepBasic_ApplicationContextElement)& ent) const
67 {
68
69         // --- own field : name ---
70
71         SW.Send(ent->Name());
72
73         // --- own field : frameOfReference ---
74
75         SW.Send(ent->FrameOfReference());
76 }
77
78
79 void RWStepBasic_RWApplicationContextElement::Share(const Handle(StepBasic_ApplicationContextElement)& ent, Interface_EntityIterator& iter) const
80 {
81
82         iter.GetOneItem(ent->FrameOfReference());
83 }
84