0024428: Implementation of LGPL license
[occt.git] / src / RWStepRepr / RWStepRepr_RWConfigurationEffectivity.cxx
CommitLineData
b311480e 1// Created on: 1999-11-26
2// Created by: Andrey BETENEV
3// Copyright (c) 1999 Matra Datavision
973c2be1 4// Copyright (c) 1999-2014 OPEN CASCADE SAS
b311480e 5//
973c2be1 6// This file is part of Open CASCADE Technology software library.
b311480e 7//
973c2be1 8// This library is free software; you can redistribute it and / or modify it
9// under the terms of the GNU Lesser General Public 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.
b311480e 13//
973c2be1 14// Alternatively, this file may be used under the terms of Open CASCADE
15// commercial license or contractual agreement.
b311480e 16
7fd59977 17// Generator: ExpToCas (EXPRESS -> CASCADE/XSTEP Translator) V1.0
7fd59977 18
19#include <RWStepRepr_RWConfigurationEffectivity.ixx>
20
21//=======================================================================
22//function : RWStepRepr_RWConfigurationEffectivity
23//purpose :
24//=======================================================================
25
26RWStepRepr_RWConfigurationEffectivity::RWStepRepr_RWConfigurationEffectivity ()
27{
28}
29
30//=======================================================================
31//function : ReadStep
32//purpose :
33//=======================================================================
34
35void RWStepRepr_RWConfigurationEffectivity::ReadStep (const Handle(StepData_StepReaderData)& data,
36 const Standard_Integer num,
37 Handle(Interface_Check)& ach,
38 const Handle(StepRepr_ConfigurationEffectivity) &ent) const
39{
40 // Check number of parameters
41 if ( ! data->CheckNbParams(num,3,ach,"configuration_effectivity") ) return;
42
43 // Inherited fields of Effectivity
44
45 Handle(TCollection_HAsciiString) aEffectivity_Id;
46 data->ReadString (num, 1, "effectivity.id", ach, aEffectivity_Id);
47
48 // Inherited fields of ProductDefinitionEffectivity
49
50 Handle(StepBasic_ProductDefinitionRelationship) aProductDefinitionEffectivity_Usage;
51 data->ReadEntity (num, 2, "product_definition_effectivity.usage", ach, STANDARD_TYPE(StepBasic_ProductDefinitionRelationship), aProductDefinitionEffectivity_Usage);
52
53 // Own fields of ConfigurationEffectivity
54
55 Handle(StepRepr_ConfigurationDesign) aConfiguration;
56 data->ReadEntity (num, 3, "configuration", ach, STANDARD_TYPE(StepRepr_ConfigurationDesign), aConfiguration);
57
58 // Initialize entity
59 ent->Init(aEffectivity_Id,
60 aProductDefinitionEffectivity_Usage,
61 aConfiguration);
62}
63
64//=======================================================================
65//function : WriteStep
66//purpose :
67//=======================================================================
68
69void RWStepRepr_RWConfigurationEffectivity::WriteStep (StepData_StepWriter& SW,
70 const Handle(StepRepr_ConfigurationEffectivity) &ent) const
71{
72
73 // Inherited fields of Effectivity
74
75 SW.Send (ent->StepBasic_Effectivity::Id());
76
77 // Inherited fields of ProductDefinitionEffectivity
78
79 SW.Send (ent->StepBasic_ProductDefinitionEffectivity::Usage());
80
81 // Own fields of ConfigurationEffectivity
82
83 SW.Send (ent->Configuration());
84}
85
86//=======================================================================
87//function : Share
88//purpose :
89//=======================================================================
90
91void RWStepRepr_RWConfigurationEffectivity::Share (const Handle(StepRepr_ConfigurationEffectivity) &ent,
92 Interface_EntityIterator& iter) const
93{
94
95 // Inherited fields of Effectivity
96
97 // Inherited fields of ProductDefinitionEffectivity
98
99 iter.AddItem (ent->StepBasic_ProductDefinitionEffectivity::Usage());
100
101 // Own fields of ConfigurationEffectivity
102
103 iter.AddItem (ent->Configuration());
104}