Safir SDK Core
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ThisNodeParameters.h
Go to the documentation of this file.
1 #ifndef SAFIR_DOB_THISNODEPARAMETERS_H_INCLUDED
2 #define SAFIR_DOB_THISNODEPARAMETERS_H_INCLUDED
3 
8 
11 
12 #ifdef _MSC_VER
13 #ifdef DOTS_GENERATED_CPP_EXPORTS
14 #define GENERATED_API __declspec(dllexport)
15 #else
16 #define GENERATED_API __declspec(dllimport)
17 #ifdef _DEBUG
18 #pragma comment( lib, "dots_generated-Safir-cppd.lib" )
19 #else
20 #pragma comment( lib, "dots_generated-Safir-cpp.lib" )
21 #endif
22 #endif
23 #endif
24 #ifdef __GNUC__
25 #define GENERATED_API
26 #endif
27 
31 namespace Safir
32 {
36 namespace Dob
37 {
38 
39  class ThisNodeParameters; //forward declaration
40  typedef boost::shared_ptr<ThisNodeParameters> ThisNodeParametersPtr;
41  typedef boost::shared_ptr<const ThisNodeParameters> ThisNodeParametersConstPtr;
42 
45 
50  class GENERATED_API ThisNodeParameters : public Safir::Dob::Parametrization
51  {
52  public:
53  //Constructors and Create routines
55  virtual Safir::Dob::Typesystem::ObjectPtr Clone() const;
56  static ThisNodeParametersPtr Create();
57 
58  //NodeNumber
62  static Safir::Dob::Typesystem::Int32 NodeNumber();
63 
65  static const Safir::Dob::Typesystem::TypeId ClassTypeId = 7177876786334465007LL;
66 
67  //Type id for ThisNodeParameters
68  virtual Safir::Dob::Typesystem::TypeId GetTypeId() const {return ClassTypeId;}
69 
70  //Check if anything in the object has change flags set
71  virtual bool IsChanged();
72 
73  //Recursively set all change flags in the object
74  virtual void SetChanged(const bool changed);
75 
76 
77  //Reflection part (Don't use unless you really know what you're doing!!)
81  const Safir::Dob::Typesystem::ArrayIndex index) const;
82 
83  virtual Safir::Dob::Typesystem::Int32 CalculateBlobSize() const;
84  virtual void WriteToBlob(char * blob, char * & beginningOfUnused) const;
85  explicit ThisNodeParameters(char const * const blob);
86 
87  private:
88 
89 #ifdef _MSC_VER
90 #pragma warning (push)
91 #pragma warning (disable : 4251)
92 #endif
93 
94 
95 #ifdef _MSC_VER
96 #pragma warning (pop)
97 #endif
98  };
99 
100 } // Dob
101 } // Safir
102 
103 #endif
104 
Defines the node number of this node.
Definition: ThisNodeParameters.h:50
Safir::Dob::Typesystem::ArrayContainer< ThisNodeParametersContainer > ThisNodeParametersContainerArray
Definition: ThisNodeParameters.h:44
DotsC_TypeId TypeId
A unique type identifier.
Definition: Dob/Typesystem/Defs.h:221
boost::shared_ptr< const ThisNodeParameters > ThisNodeParametersConstPtr
Definition: ThisNodeParameters.h:41
Template class for all containers of automatically generated DOB objects.
Definition: ObjectContainer.h:185
boost::shared_ptr< Object > ObjectPtr
A smart pointer to an Object.
Definition: Object.h:41
DotsC_ArrayIndex ArrayIndex
Index into an array.
Definition: Dob/Typesystem/Defs.h:249
virtual Safir::Dob::Typesystem::TypeId GetTypeId() const
Get the type id of this object.
Definition: ThisNodeParameters.h:68
This class is intended to be used as baseclass for classes that only contains parameters.
Definition: Parametrization.h:48
Safir::Dob::Typesystem::ObjectContainerImpl< ThisNodeParameters > ThisNodeParametersContainer
Definition: ThisNodeParameters.h:43
Base class for all Containers.
Definition: ContainerBase.h:41
boost::shared_ptr< ThisNodeParameters > ThisNodeParametersPtr
Definition: ThisNodeParameters.h:39
STL container for arrays of DOB-containers.
Definition: ArrayContainer.h:58
DotsC_Int32 Int32
32 bit integer type.
Definition: Dob/Typesystem/Defs.h:69
DotsC_MemberIndex MemberIndex
The index of a member in an object.
Definition: Dob/Typesystem/Defs.h:240
static bool IsChanged(const ContainerBase &container)
Check if a container is changed.
Definition: ContainerBase.h:134