Safir SDK Core
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
MirroredNodeInfo.h
Go to the documentation of this file.
1#pragma once
2
9
10#include <Safir/Dob/NodeInfo.h>
11
12#include <Safir/Utilities/Internal/VisibilityHelpers.h>
13
14#ifdef safir_generated_Core_cpp_EXPORTS
15# define SAFIR_GENERATED_Core_API SAFIR_HELPER_DLL_EXPORT
16#else
17# define SAFIR_GENERATED_Core_API SAFIR_HELPER_DLL_IMPORT
18# define SAFIR_LIBRARY_NAME "safir_generated-Core-cpp"
19# include <Safir/Utilities/Internal/AutoLink.h>
20#endif
21#define SAFIR_GENERATED_Core_API_LOCAL SAFIR_HELPER_DLL_LOCAL
22
26namespace Safir
27{
31namespace Dob
32{
33
34 class MirroredNodeInfo; //forward declaration
35 typedef std::shared_ptr<MirroredNodeInfo> MirroredNodeInfoPtr;
36 typedef std::shared_ptr<const MirroredNodeInfo> MirroredNodeInfoConstPtr;
37
41
48 {
49 public:
50 //Constructors and Create routines
54
56 static const Safir::Dob::Typesystem::TypeId ClassTypeId = 654416925710082707LL;
57
58 //Type id for MirroredNodeInfo
59 Safir::Dob::Typesystem::TypeId GetTypeId() const override {return ClassTypeId;}
60
61 //Check if anything in the object has change flags set
62 bool IsChanged() override;
63
64 //Recursively set all change flags in the object
65 void SetChanged(const bool changed) override;
66
67
68 //Reflection part (Don't use unless you really know what you're doing!!)
70 const Safir::Dob::Typesystem::ArrayIndex index) override;
72 const Safir::Dob::Typesystem::ArrayIndex index) const override;
73
74 void WriteToBlob(Safir::Dob::Typesystem::Int64 handle) const override;
76
77 private:
78
79#ifdef _MSC_VER
80#pragma warning (push)
81#pragma warning (disable : 4251)
82#endif
83
84
85#ifdef _MSC_VER
86#pragma warning (pop)
87#endif
88 };
89
90} // Dob
91} // Safir
92
93
#define SAFIR_GENERATED_Core_API
Definition BackdoorCommand.h:18
This namespace contains all the functionality and definitions of the SAFIR SDK.
Definition Backdoor.h:31
std::shared_ptr< const MirroredNodeInfo > MirroredNodeInfoConstPtr
Definition MirroredNodeInfo.h:36
Safir::Dob::Typesystem::ArrayContainer< MirroredNodeInfoContainer > MirroredNodeInfoContainerArray
Definition MirroredNodeInfo.h:39
Safir::Dob::Typesystem::GenericObjectSequenceContainer< MirroredNodeInfo > MirroredNodeInfoSequenceContainer
Definition MirroredNodeInfo.h:40
Safir::Dob::Typesystem::ObjectContainerImpl< MirroredNodeInfo > MirroredNodeInfoContainer
Definition MirroredNodeInfo.h:38
std::shared_ptr< MirroredNodeInfo > MirroredNodeInfoPtr
Definition MirroredNodeInfo.h:35
DotsC_Int64 Int64
64 bit integer type.
Definition Defs.h:69
std::shared_ptr< Object > ObjectPtr
A smart pointer to an Object.
Definition Object.h:44
DotsC_ArrayIndex ArrayIndex
Index into an array.
Definition Defs.h:246
DotsC_TypeId TypeId
A unique type identifier.
Definition Defs.h:218
DotsC_MemberIndex MemberIndex
The index of a member in an object.
Definition Defs.h:237
STL container for arrays of DOB-containers.
Definition ArrayContainer.h:59
Base class for all Containers.
Definition ContainerBase.h:44
Template class for all containers of automatically generated DOB objects.
Definition ObjectContainer.h:190
Node information for all nodes currently in the system.
Definition MirroredNodeInfo.h:48
MirroredNodeInfo(Safir::Dob::Typesystem::Int64 handle)
void SetChanged(const bool changed) override
Recursively set change flags in all members of this object.
bool IsChanged() override
Check if any member of this object is changed.
static MirroredNodeInfoPtr Create()
Safir::Dob::Typesystem::ContainerBase & GetMember(const Safir::Dob::Typesystem::MemberIndex member, const Safir::Dob::Typesystem::ArrayIndex index) override
Get a reference to a member container from an object.
void WriteToBlob(Safir::Dob::Typesystem::Int64 handle) const override
Write the object to a blob.
Safir::Dob::Typesystem::ObjectPtr Clone() const override
Create a copy of the object.
Safir::Dob::Typesystem::TypeId GetTypeId() const override
Get the type id of this object.
Definition MirroredNodeInfo.h:59
const Safir::Dob::Typesystem::ContainerBase & GetMember(const Safir::Dob::Typesystem::MemberIndex member, const Safir::Dob::Typesystem::ArrayIndex index) const override
Get a const reference to a member container from an object.
Node information for all nodes currently in the system.
Definition NodeInfo.h:52