Safir SDK Core
Loading...
Searching...
No Matches
LibraryParameters.h
Go to the documentation of this file.
1#pragma once
2
9
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 Time
32{
33
34 class LibraryParameters; //forward declaration
35 typedef std::shared_ptr<LibraryParameters> LibraryParametersPtr;
36 typedef std::shared_ptr<const LibraryParameters> LibraryParametersConstPtr;
37
41
47 {
48 public:
49 //Constructors and Create routines
53
54 //LibraryName
59 static std::wstring LibraryName();
60
61 //UtcTimeFunctionName
66 static std::wstring UtcTimeFunctionName();
67
68 //LocalTimeOffsetFunctionName
73 static std::wstring LocalTimeOffsetFunctionName();
74
76 static const Safir::Dob::Typesystem::TypeId ClassTypeId = 6901723808460309067LL;
77
78 //Type id for LibraryParameters
79 Safir::Dob::Typesystem::TypeId GetTypeId() const override {return ClassTypeId;}
80
81 //Check if anything in the object has change flags set
82 bool IsChanged() override;
83
84 //Recursively set all change flags in the object
85 void SetChanged(const bool changed) override;
86
87
88 //Reflection part (Don't use unless you really know what you're doing!!)
90 const Safir::Dob::Typesystem::ArrayIndex index) override;
92 const Safir::Dob::Typesystem::ArrayIndex index) const override;
93
94 void WriteToBlob(Safir::Dob::Typesystem::Int64 handle) const override;
96
97 private:
98
99#ifdef _MSC_VER
100#pragma warning (push)
101#pragma warning (disable : 4251)
102#endif
103
104
105#ifdef _MSC_VER
106#pragma warning (pop)
107#endif
108 };
109
110} // Time
111} // Safir
112
113
#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
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
std::shared_ptr< const LibraryParameters > LibraryParametersConstPtr
Definition LibraryParameters.h:36
std::shared_ptr< LibraryParameters > LibraryParametersPtr
Definition LibraryParameters.h:35
Safir::Dob::Typesystem::ObjectContainerImpl< LibraryParameters > LibraryParametersContainer
Definition LibraryParameters.h:38
Safir::Dob::Typesystem::GenericObjectSequenceContainer< LibraryParameters > LibraryParametersSequenceContainer
Definition LibraryParameters.h:40
Safir::Dob::Typesystem::ArrayContainer< LibraryParametersContainer > LibraryParametersContainerArray
Definition LibraryParameters.h:39
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
This class is intended to be used as baseclass for classes that only contains parameters.
Definition Parametrization.h:46
Defines parameters for the time provider library.
Definition LibraryParameters.h:47
static std::wstring UtcTimeFunctionName()
The name of the function that returns current UTC time.
static std::wstring LocalTimeOffsetFunctionName()
The name of the function that returns local time offset.
void WriteToBlob(Safir::Dob::Typesystem::Int64 handle) const override
Write the object to a blob.
Safir::Dob::Typesystem::TypeId GetTypeId() const override
Get the type id of this object.
Definition LibraryParameters.h:79
void SetChanged(const bool changed) override
Recursively set change flags in all members of this object.
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.
LibraryParameters(Safir::Dob::Typesystem::Int64 handle)
static LibraryParametersPtr Create()
Safir::Dob::Typesystem::ObjectPtr Clone() const override
Create a copy of the object.
bool IsChanged() override
Check if any member of this object is changed.
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.
static std::wstring LibraryName()
The name of the library that is the time provider in the system.