1 // File: RWStepBasic_RWProductDefinitionRelationship.cxx
2 // Created: Mon Jul 3 19:47:51 2000
3 // Author: Andrey BETENEV
4 // Generator: ExpToCas (EXPRESS -> CASCADE/XSTEP Translator) V1.1
5 // Copyright: Matra Datavision 2000
7 #include <RWStepBasic_RWProductDefinitionRelationship.ixx>
9 //=======================================================================
10 //function : RWStepBasic_RWProductDefinitionRelationship
12 //=======================================================================
14 RWStepBasic_RWProductDefinitionRelationship::RWStepBasic_RWProductDefinitionRelationship ()
18 //=======================================================================
21 //=======================================================================
23 void RWStepBasic_RWProductDefinitionRelationship::ReadStep (const Handle(StepData_StepReaderData)& data,
24 const Standard_Integer num,
25 Handle(Interface_Check)& ach,
26 const Handle(StepBasic_ProductDefinitionRelationship) &ent) const
28 // Check number of parameters
29 if ( ! data->CheckNbParams(num,5,ach,"product_definition_relationship") ) return;
31 // Own fields of ProductDefinitionRelationship
33 Handle(TCollection_HAsciiString) aId;
34 data->ReadString (num, 1, "id", ach, aId);
36 Handle(TCollection_HAsciiString) aName;
37 data->ReadString (num, 2, "name", ach, aName);
39 Handle(TCollection_HAsciiString) aDescription;
40 Standard_Boolean hasDescription = Standard_True;
41 if ( data->IsParamDefined (num,3) ) {
42 data->ReadString (num, 3, "description", ach, aDescription);
45 hasDescription = Standard_False;
48 Handle(StepBasic_ProductDefinition) aRelatingProductDefinition;
49 data->ReadEntity (num, 4, "relating_product_definition", ach, STANDARD_TYPE(StepBasic_ProductDefinition), aRelatingProductDefinition);
51 Handle(StepBasic_ProductDefinition) aRelatedProductDefinition;
52 data->ReadEntity (num, 5, "related_product_definition", ach, STANDARD_TYPE(StepBasic_ProductDefinition), aRelatedProductDefinition);
59 aRelatingProductDefinition,
60 aRelatedProductDefinition);
63 //=======================================================================
64 //function : WriteStep
66 //=======================================================================
68 void RWStepBasic_RWProductDefinitionRelationship::WriteStep (StepData_StepWriter& SW,
69 const Handle(StepBasic_ProductDefinitionRelationship) &ent) const
72 // Own fields of ProductDefinitionRelationship
76 SW.Send (ent->Name());
78 if ( ent->HasDescription() ) {
79 SW.Send (ent->Description());
83 SW.Send (ent->RelatingProductDefinition());
85 SW.Send (ent->RelatedProductDefinition());
88 //=======================================================================
91 //=======================================================================
93 void RWStepBasic_RWProductDefinitionRelationship::Share (const Handle(StepBasic_ProductDefinitionRelationship) &ent,
94 Interface_EntityIterator& iter) const
97 // Own fields of ProductDefinitionRelationship
99 iter.AddItem (ent->RelatingProductDefinition());
101 iter.AddItem (ent->RelatedProductDefinition());