OpenLexocad  27.0
PropertyFace.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <Core/core_defines2.h>
4 
5 #include "Core/Property.h"
6 #include "Core/Variant.h"
7 
8 class TopoDS_Face;
9 
10 namespace Core
11 {
13 {
15 
16 public:
17  PropertyFace(void);
18  virtual ~PropertyFace(void);
19 
20  virtual void setValue(const TopoDS_Face& face) = 0;
21  virtual bool setValueFromVariant(const Core::Variant& value) = 0;
22 
23  virtual void copyValue(Core::Property* p) = 0;
24 
25  virtual const TopoDS_Face& getValue() const = 0;
26  virtual Core::Variant getVariant(void) const = 0;
27 
28  virtual void save(Base::AbstractWriter& writer, Base::PersistanceVersion& save_version) = 0;
29  virtual void restore(Base::AbstractXMLReader& reader, Base::PersistanceVersion& version) = 0;
30  virtual bool isEqual(const Property*) const;
31 
32 protected:
33 };
34 
35 } // namespace Core
#define CORE_EXPORT
Definition: core_defines2.h:10
Definition: Persistance.h:20
LX_CORE_EXPORT Version & version
Definition: Variant.h:90
Definition: AbstractXMLReader.h:10
Definition: Base.h:19
Definition: PropertyFace.h:12
Definition: Writer.h:27
Definition: Property.h:81
TYPESYSTEM_HEADER()