0028564: Support of applications using old persistence (ShapeSchema)
[occt.git] / src / StdPersistent / StdPersistent_DataXtd_Constraint.hxx
CommitLineData
ff205346 1// Copyright (c) 2015 OPEN CASCADE SAS
2//
3// This file is part of Open CASCADE Technology software library.
4//
5// This library is free software; you can redistribute it and/or modify it under
6// the terms of the GNU Lesser General Public License version 2.1 as published
7// by the Free Software Foundation, with special exception defined in the file
8// OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
9// distribution for complete text of the license and disclaimer of any warranty.
10//
11// Alternatively, this file may be used under the terms of Open CASCADE
12// commercial license or contractual agreement.
13
14
15#ifndef _StdPersistent_DataXtd_Constraint_HeaderFile
16#define _StdPersistent_DataXtd_Constraint_HeaderFile
17
18#include <StdObjMgt_Attribute.hxx>
19#include <StdLPersistent_HArray1.hxx>
20
21#include <TDataXtd_Constraint.hxx>
ff205346 22
23
24class StdPersistent_DataXtd_Constraint
25 : public StdObjMgt_Attribute<TDataXtd_Constraint>
26{
27public:
28 //! Read persistent data from a file.
29 inline void Read (StdObjMgt_ReadData& theReadData)
30 {
31 theReadData >> myType >> myGeometries >> myValue
32 >> myIsReversed >> myIsInverted >> myIsVerified >> myPlane;
33 }
ec964372 34 //! Write persistent data to a file.
35 inline void Write (StdObjMgt_WriteData& theWriteData) const
36 {
37 theWriteData << myType << myGeometries << myValue
38 << myIsReversed << myIsInverted << myIsVerified << myPlane;
39 }
40 //! Gets persistent child objects
41 inline void PChildren(StdObjMgt_Persistent::SequenceOfPersistent& theChildren) const
42 {
43 theChildren.Append(myGeometries);
44 theChildren.Append(myValue);
45 theChildren.Append(myPlane);
46 }
47 //! Returns persistent type name
48 inline Standard_CString PName() const { return "PDataXtd_Constraint"; }
ff205346 49
50 //! Import transient attribuite from the persistent data.
51 void Import (const Handle(TDataXtd_Constraint)& theAttribute) const;
52
53private:
45d8465e 54 Standard_Integer myType;
55 Handle(StdLPersistent_HArray1::Persistent) myGeometries;
56 Handle(StdObjMgt_Persistent) myValue;
57 Standard_Boolean myIsReversed;
58 Standard_Boolean myIsInverted;
59 Standard_Boolean myIsVerified;
60 Handle(StdObjMgt_Persistent) myPlane;
ff205346 61};
62
63#endif