2 #include <RWStepAP214_RWAutoDesignNominalDateAssignment.ixx>
3 #include <StepAP214_HArray1OfAutoDesignDatedItem.hxx>
4 #include <StepAP214_AutoDesignDatedItem.hxx>
5 #include <StepBasic_Date.hxx>
6 #include <StepBasic_DateRole.hxx>
9 #include <Interface_EntityIterator.hxx>
12 #include <StepAP214_AutoDesignNominalDateAssignment.hxx>
15 RWStepAP214_RWAutoDesignNominalDateAssignment::RWStepAP214_RWAutoDesignNominalDateAssignment () {}
17 void RWStepAP214_RWAutoDesignNominalDateAssignment::ReadStep
18 (const Handle(StepData_StepReaderData)& data,
19 const Standard_Integer num,
20 Handle(Interface_Check)& ach,
21 const Handle(StepAP214_AutoDesignNominalDateAssignment)& ent) const
25 // --- Number of Parameter Control ---
27 if (!data->CheckNbParams(num,3,ach,"auto_design_nominal_date_assignment")) return;
29 // --- inherited field : assignedDate ---
31 Handle(StepBasic_Date) aAssignedDate;
33 Standard_Boolean stat1 =
35 data->ReadEntity(num, 1,"assigned_date", ach, STANDARD_TYPE(StepBasic_Date), aAssignedDate);
37 // --- inherited field : role ---
39 Handle(StepBasic_DateRole) aRole;
41 Standard_Boolean stat2 =
43 data->ReadEntity(num, 2,"role", ach, STANDARD_TYPE(StepBasic_DateRole), aRole);
45 // --- own field : items ---
47 Handle(StepAP214_HArray1OfAutoDesignDatedItem) aItems;
48 StepAP214_AutoDesignDatedItem aItemsItem;
49 Standard_Integer nsub3;
50 if (data->ReadSubList (num,3,"items",ach,nsub3)) {
51 Standard_Integer nb3 = data->NbParams(nsub3);
52 aItems = new StepAP214_HArray1OfAutoDesignDatedItem (1, nb3);
53 for (Standard_Integer i3 = 1; i3 <= nb3; i3 ++) {
54 Standard_Boolean stat3 = data->ReadEntity
55 (nsub3,i3,"items",ach,aItemsItem);
56 if (stat3) aItems->SetValue(i3,aItemsItem);
60 //--- Initialisation of the read entity ---
63 ent->Init(aAssignedDate, aRole, aItems);
67 void RWStepAP214_RWAutoDesignNominalDateAssignment::WriteStep
68 (StepData_StepWriter& SW,
69 const Handle(StepAP214_AutoDesignNominalDateAssignment)& ent) const
72 // --- inherited field assignedDate ---
74 SW.Send(ent->AssignedDate());
76 // --- inherited field role ---
80 // --- own field : items ---
83 for (Standard_Integer i3 = 1; i3 <= ent->NbItems(); i3 ++) {
84 SW.Send(ent->ItemsValue(i3).Value());
90 void RWStepAP214_RWAutoDesignNominalDateAssignment::Share(const Handle(StepAP214_AutoDesignNominalDateAssignment)& ent, Interface_EntityIterator& iter) const
93 iter.GetOneItem(ent->AssignedDate());
96 iter.GetOneItem(ent->Role());
99 Standard_Integer nbElem3 = ent->NbItems();
100 for (Standard_Integer is3=1; is3<=nbElem3; is3 ++) {
101 iter.GetOneItem(ent->ItemsValue(is3).Value());