Safir SDK Core
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PersistentDataReady.h
Go to the documentation of this file.
1 #ifndef SAFIR_DOB_PERSISTENTDATAREADY_H_INCLUDED
2 #define SAFIR_DOB_PERSISTENTDATAREADY_H_INCLUDED
3 
8 
9 #include <Safir/Dob/Service.h>
10 
11 #include <Safir/Utilities/Internal/VisibilityHelpers.h>
12 
13 #ifdef dots_generated_Safir_cpp_EXPORTS
14 # define DOTS_GENERATED_Safir_API SAFIR_HELPER_DLL_EXPORT
15 #else
16 # define DOTS_GENERATED_Safir_API SAFIR_HELPER_DLL_IMPORT
17 # define SAFIR_LIBRARY_NAME "dots_generated-Safir-cpp"
18 # include <Safir/Utilities/Internal/AutoLink.h>
19 #endif
20 #define DOTS_GENERATED_Safir_API_LOCAL SAFIR_HELPER_DLL_LOCAL
21 
25 namespace Safir
26 {
30 namespace Dob
31 {
32 
33  class PersistentDataReady; //forward declaration
34  typedef boost::shared_ptr<PersistentDataReady> PersistentDataReadyPtr;
35  typedef boost::shared_ptr<const PersistentDataReady> PersistentDataReadyConstPtr;
36 
39 
45  {
46  public:
47  //Constructors and Create routines
49  virtual Safir::Dob::Typesystem::ObjectPtr Clone() const;
50  static PersistentDataReadyPtr Create();
51 
53  static const Safir::Dob::Typesystem::TypeId ClassTypeId = -541049774038136621LL;
54 
55  //Type id for PersistentDataReady
56  virtual Safir::Dob::Typesystem::TypeId GetTypeId() const {return ClassTypeId;}
57 
58  //Check if anything in the object has change flags set
59  virtual bool IsChanged();
60 
61  //Recursively set all change flags in the object
62  virtual void SetChanged(const bool changed);
63 
64 
65  //Reflection part (Don't use unless you really know what you're doing!!)
69  const Safir::Dob::Typesystem::ArrayIndex index) const;
70 
71  virtual Safir::Dob::Typesystem::Int32 CalculateBlobSize() const;
72  virtual void WriteToBlob(char * blob, char * & beginningOfUnused) const;
73  explicit PersistentDataReady(char const * const blob);
74 
75  private:
76 
77 #ifdef _MSC_VER
78 #pragma warning (push)
79 #pragma warning (disable : 4251)
80 #endif
81 
82 
83 #ifdef _MSC_VER
84 #pragma warning (pop)
85 #endif
86  };
87 
88 } // Dob
89 } // Safir
90 
91 #endif
92 
boost::shared_ptr< const PersistentDataReady > PersistentDataReadyConstPtr
Definition: PersistentDataReady.h:35
This service is called by the persistency handler when the persistent data has been fed to the Dob...
Definition: PersistentDataReady.h:44
DotsC_TypeId TypeId
A unique type identifier.
Definition: Defs.h:219
Template class for all containers of automatically generated DOB objects.
Definition: ObjectContainer.h:185
boost::shared_ptr< PersistentDataReady > PersistentDataReadyPtr
Definition: PersistentDataReady.h:33
boost::shared_ptr< Object > ObjectPtr
A smart pointer to an Object.
Definition: Object.h:41
DotsC_ArrayIndex ArrayIndex
Index into an array.
Definition: Defs.h:247
The baseclass for all services.
Definition: Service.h:43
Base class for all Containers.
Definition: ContainerBase.h:41
Safir::Dob::Typesystem::ArrayContainer< PersistentDataReadyContainer > PersistentDataReadyContainerArray
Definition: PersistentDataReady.h:38
virtual Safir::Dob::Typesystem::TypeId GetTypeId() const
Get the type id of this object.
Definition: PersistentDataReady.h:56
#define DOTS_GENERATED_Safir_API
Definition: PersistentDataReady.h:16
STL container for arrays of DOB-containers.
Definition: ArrayContainer.h:58
DotsC_Int32 Int32
32 bit integer type.
Definition: Defs.h:67
DotsC_MemberIndex MemberIndex
The index of a member in an object.
Definition: Defs.h:238
Safir::Dob::Typesystem::ObjectContainerImpl< PersistentDataReady > PersistentDataReadyContainer
Definition: PersistentDataReady.h:37
static bool IsChanged(const ContainerBase &container)
Check if a container is changed.
Definition: ContainerBase.h:134