Safir SDK Core
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ConnectionInfo.h
Go to the documentation of this file.
1#pragma once
2
9
10#include <Safir/Dob/Item.h>
12
13#include <Safir/Utilities/Internal/VisibilityHelpers.h>
14
15#ifdef safir_generated_Core_cpp_EXPORTS
16# define SAFIR_GENERATED_Core_API SAFIR_HELPER_DLL_EXPORT
17#else
18# define SAFIR_GENERATED_Core_API SAFIR_HELPER_DLL_IMPORT
19# define SAFIR_LIBRARY_NAME "safir_generated-Core-cpp"
20# include <Safir/Utilities/Internal/AutoLink.h>
21#endif
22#define SAFIR_GENERATED_Core_API_LOCAL SAFIR_HELPER_DLL_LOCAL
23
27namespace Safir
28{
32namespace Dob
33{
34
35 class ConnectionInfo; //forward declaration
36 typedef std::shared_ptr<ConnectionInfo> ConnectionInfoPtr;
37 typedef std::shared_ptr<const ConnectionInfo> ConnectionInfoConstPtr;
38
42
48 {
49 public:
50 //Constructors and Create routines
54
55 //NodeId
62
63
64 //ConnectionName
72
73
74 //ConnectionId
81
82
84 static const Safir::Dob::Typesystem::TypeId ClassTypeId = 1032839869420733324LL;
85
86 //Type id for ConnectionInfo
87 Safir::Dob::Typesystem::TypeId GetTypeId() const override {return ClassTypeId;}
88
89 //Check if anything in the object has change flags set
90 bool IsChanged() override;
91
92 //Recursively set all change flags in the object
93 void SetChanged(const bool changed) override;
94
95
96 //Reflection part (Don't use unless you really know what you're doing!!)
98 const Safir::Dob::Typesystem::ArrayIndex index) override;
100 const Safir::Dob::Typesystem::ArrayIndex index) const override;
101
102 void WriteToBlob(Safir::Dob::Typesystem::Int64 handle) const override;
104
105 private:
106
107#ifdef _MSC_VER
108#pragma warning (push)
109#pragma warning (disable : 4251)
110#endif
111
113 Safir::Dob::Typesystem::StringContainer m_ConnectionNameMember;
114 Safir::Dob::Typesystem::Int64Container m_ConnectionIdMember;
115
116#ifdef _MSC_VER
117#pragma warning (pop)
118#endif
119 };
120
121} // Dob
122} // Safir
123
124
#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 ConnectionInfo > ConnectionInfoConstPtr
Definition ConnectionInfo.h:37
Safir::Dob::Typesystem::ArrayContainer< ConnectionInfoContainer > ConnectionInfoContainerArray
Definition ConnectionInfo.h:40
Safir::Dob::Typesystem::GenericObjectSequenceContainer< ConnectionInfo > ConnectionInfoSequenceContainer
Definition ConnectionInfo.h:41
Safir::Dob::Typesystem::ObjectContainerImpl< ConnectionInfo > ConnectionInfoContainer
Definition ConnectionInfo.h:39
std::shared_ptr< ConnectionInfo > ConnectionInfoPtr
Definition ConnectionInfo.h:36
DotsC_Int32 Int32
32 bit integer type.
Definition Defs.h:66
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
Definition ContainerProxies.h:39
Template class for all containers of automatically generated DOB objects.
Definition ObjectContainer.h:190
Container for base types.
Definition ValueContainers.h:61
Container for strings (std::wstring).
Definition ValueContainers.h:127
Container for information about a Dob connection.
Definition ConnectionInfo.h:48
const Safir::Dob::Typesystem::ContainerProxy< Safir::Dob::Typesystem::Int64Container > ConnectionId() const
The connection id.
static ConnectionInfoPtr Create()
void WriteToBlob(Safir::Dob::Typesystem::Int64 handle) const override
Write the object to a blob.
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.
const Safir::Dob::Typesystem::ContainerProxy< Safir::Dob::Typesystem::Int64Container > NodeId() const
The node id.
Safir::Dob::Typesystem::TypeId GetTypeId() const override
Get the type id of this object.
Definition ConnectionInfo.h:87
static Safir::Dob::Typesystem::Int32 ConnectionNameMaxStringLength()
Safir::Dob::Typesystem::ContainerProxy< Safir::Dob::Typesystem::Int64Container > NodeId()
static Safir::Dob::Typesystem::MemberIndex ConnectionIdMemberIndex()
static Safir::Dob::Typesystem::MemberIndex NodeIdMemberIndex()
Safir::Dob::Typesystem::ObjectPtr Clone() const override
Create a copy of the object.
ConnectionInfo(Safir::Dob::Typesystem::Int64 handle)
const Safir::Dob::Typesystem::ContainerProxy< Safir::Dob::Typesystem::StringContainer > ConnectionName() const
The connection name.
Safir::Dob::Typesystem::ContainerProxy< Safir::Dob::Typesystem::Int64Container > ConnectionId()
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.
bool IsChanged() override
Check if any member of this object is changed.
void SetChanged(const bool changed) override
Recursively set change flags in all members of this object.
Safir::Dob::Typesystem::ContainerProxy< Safir::Dob::Typesystem::StringContainer > ConnectionName()
static Safir::Dob::Typesystem::MemberIndex ConnectionNameMemberIndex()
The baseclass for all items.
Definition Item.h:46