0031687: Draw Harness, ViewerTest - extend command vrenderparams with option updating...
[occt.git] / src / RWStepDimTol / RWStepDimTol_RWGeometricToleranceRelationship.cxx
1 // Created on: 2003-06-04
2 // Created by: Galina KULIKOVA
3 // Copyright (c) 2003-2014 OPEN CASCADE SAS
4 //
5 // This file is part of Open CASCADE Technology software library.
6 //
7 // This library is free software; you can redistribute it and/or modify it under
8 // the terms of the GNU Lesser General Public License version 2.1 as published
9 // by the Free Software Foundation, with special exception defined in the file
10 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
11 // distribution for complete text of the license and disclaimer of any warranty.
12 //
13 // Alternatively, this file may be used under the terms of Open CASCADE
14 // commercial license or contractual agreement.
15
16 // Generator:   ExpToCas (EXPRESS -> CASCADE/XSTEP Translator) V1.2
17
18 #include <Interface_Check.hxx>
19 #include <Interface_EntityIterator.hxx>
20 #include <RWStepDimTol_RWGeometricToleranceRelationship.hxx>
21 #include <StepData_StepReaderData.hxx>
22 #include <StepData_StepWriter.hxx>
23 #include <StepDimTol_GeometricTolerance.hxx>
24 #include <StepDimTol_GeometricToleranceRelationship.hxx>
25
26 //=======================================================================
27 //function : RWStepDimTol_RWGeometricToleranceRelationship
28 //purpose  : 
29 //=======================================================================
30 RWStepDimTol_RWGeometricToleranceRelationship::RWStepDimTol_RWGeometricToleranceRelationship ()
31 {
32 }
33
34 //=======================================================================
35 //function : ReadStep
36 //purpose  : 
37 //=======================================================================
38
39 void RWStepDimTol_RWGeometricToleranceRelationship::ReadStep (const Handle(StepData_StepReaderData)& data,
40                                                               const Standard_Integer num,
41                                                               Handle(Interface_Check)& ach,
42                                                               const Handle(StepDimTol_GeometricToleranceRelationship) &ent) const
43 {
44   // Check number of parameters
45   if ( ! data->CheckNbParams(num,4,ach,"geometric_tolerance_relationship") ) return;
46
47   // Own fields of GeometricToleranceRelationship
48
49   Handle(TCollection_HAsciiString) aName;
50   data->ReadString (num, 1, "name", ach, aName);
51
52   Handle(TCollection_HAsciiString) aDescription;
53   data->ReadString (num, 2, "description", ach, aDescription);
54
55   Handle(StepDimTol_GeometricTolerance) aRelatingGeometricTolerance;
56   data->ReadEntity (num, 3, "relating_geometric_tolerance", ach, STANDARD_TYPE(StepDimTol_GeometricTolerance), aRelatingGeometricTolerance);
57
58   Handle(StepDimTol_GeometricTolerance) aRelatedGeometricTolerance;
59   data->ReadEntity (num, 4, "related_geometric_tolerance", ach, STANDARD_TYPE(StepDimTol_GeometricTolerance), aRelatedGeometricTolerance);
60
61   // Initialize entity
62   ent->Init(aName,
63             aDescription,
64             aRelatingGeometricTolerance,
65             aRelatedGeometricTolerance);
66 }
67
68 //=======================================================================
69 //function : WriteStep
70 //purpose  : 
71 //=======================================================================
72
73 void RWStepDimTol_RWGeometricToleranceRelationship::WriteStep (StepData_StepWriter& SW,
74                                                                const Handle(StepDimTol_GeometricToleranceRelationship) &ent) const
75 {
76
77   // Own fields of GeometricToleranceRelationship
78
79   SW.Send (ent->Name());
80
81   SW.Send (ent->Description());
82
83   SW.Send (ent->RelatingGeometricTolerance());
84
85   SW.Send (ent->RelatedGeometricTolerance());
86 }
87
88 //=======================================================================
89 //function : Share
90 //purpose  : 
91 //=======================================================================
92
93 void RWStepDimTol_RWGeometricToleranceRelationship::Share (const Handle(StepDimTol_GeometricToleranceRelationship) &ent,
94                                                            Interface_EntityIterator& iter) const
95 {
96
97   // Own fields of GeometricToleranceRelationship
98
99   iter.AddItem (ent->RelatingGeometricTolerance());
100
101   iter.AddItem (ent->RelatedGeometricTolerance());
102 }