summaryrefslogtreecommitdiff
path: root/drv/ShapeSchema/ShapeSchema_PColPGeom_FieldOfHArray1OfCurve.cxx
blob: a924f7998a7e25c68228dd056d23681ee7fce654 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#ifndef _ShapeSchema_PColPGeom_FieldOfHArray1OfCurve_HeaderFile
#include <ShapeSchema_PColPGeom_FieldOfHArray1OfCurve.hxx>
#endif
#ifndef _PColPGeom_FieldOfHArray1OfCurve_HeaderFile
#include <PColPGeom_FieldOfHArray1OfCurve.hxx>
#endif
#include <ShapeSchema_PColPGeom_FieldOfHArray1OfCurve.ixx>
#ifndef _Storage_Schema_HeaderFile
#include <Storage_Schema.hxx>
#endif
#ifndef _Storage_stCONSTclCOM_HeaderFile
#include <Storage_stCONSTclCOM.hxx>
#endif

void ShapeSchema_PColPGeom_FieldOfHArray1OfCurve::SAdd(const PColPGeom_FieldOfHArray1OfCurve& p, const Handle(Storage_Schema)& theSchema)
{
    Standard_Integer i;
  for (i = 0; i < p.Length(); i++) {
    theSchema->PersistentToAdd(p.Value(i));    
  }

}

void ShapeSchema_PColPGeom_FieldOfHArray1OfCurve::SWrite(const PColPGeom_FieldOfHArray1OfCurve& pp, Storage_BaseDriver& f, const Handle(Storage_Schema)& theSchema)
{
  Standard_Integer i;

  f.BeginWriteObjectData();
  f.PutInteger(pp.Length());
  for (i = 0; i < pp.Length(); i++) {
    theSchema->WritePersistentReference(pp.Value(i),f);

  }
  f.EndWriteObjectData();
}

void ShapeSchema_PColPGeom_FieldOfHArray1OfCurve::SRead(PColPGeom_FieldOfHArray1OfCurve& pp, Storage_BaseDriver& f, const Handle(Storage_Schema)& theSchema)
{
  Standard_Integer size = 0;

  f.BeginReadObjectData();
  f.GetInteger(size);
  pp.Resize(size);

  for (Standard_Integer j = 0; j < size; j++) {
    Handle(PGeom_Curve) par;

    theSchema->ReadPersistentReference(par,f);
    pp.SetValue(j,par);

  }
  f.EndReadObjectData();
}