AuboStudio SDK
0.6.3
persisted_variable.h
浏览该文件的文档.
1
#ifndef AUBO_SCOPE_PERSISTED_VARIABLE_H
2
#define AUBO_SCOPE_PERSISTED_VARIABLE_H
3
4
#include <
aubo_caps/domain/variable/variable.h
>
5
6
namespace
arcs
{
7
namespace
aubo_scope
{
8
ARCS_CLASS_FORWARD
(
PersistedVariable
);
9
10
/**
11
* This interface represents variables stored with the installation. These
12
* variables are defined in the installation and will exist even when a robot is
13
* turned off and on.
14
*/
15
class
ARCS_ABI_EXPORT
PersistedVariable
:
public
Variable
16
{
17
public
:
18
PersistedVariable
(
PersistedVariable
&f);
19
PersistedVariable
(
PersistedVariable
&&f);
20
virtual
~PersistedVariable
();
21
22
/**
23
* A persisted variable can not be guaranteed to be present. This method can
24
* be used to determine, if the variable is present.
25
*
26
*The persisted variable will not be present, if the end user loads a
27
*different installation which does not contain the variable, or if the
28
*variable is deleted by the end user.
29
*
30
* A program node storing a <code>PersistedVariable</code> in its Data
31
*Model will be undefined if the variable cannot be resolved (i.e. the
32
*variable is not present).
33
*
34
* @return <code>true</code>, if this persisted variable is resolvable (i.e.
35
* present in the current installation).
36
*/
37
bool
isResolvable
();
38
39
protected
:
40
PersistedVariable
();
41
42
private
:
43
friend
class
DataSwitch
;
44
void
*
d_
{
nullptr
};
45
};
46
47
struct
PersistedVariableFilter
48
{
49
bool
operator()
(VariablePtr var)
50
{
51
return
std::dynamic_pointer_cast<PersistedVariable>(var) !=
nullptr
&&
52
var->getType() ==
Variable::VALUE_PERSISTED
;
53
}
54
};
55
56
}
// namespace aubo_scope
57
}
// namespace arcs
58
#endif
// AUBO_SCOPE_PERSISTED_VARIABLE_H
ARCS_ABI_EXPORT
#define ARCS_ABI_EXPORT
定义
class_forward.h:16
ARCS_CLASS_FORWARD
#define ARCS_CLASS_FORWARD(C)
Macro that forward declares a class and defines the respective smartpointers through ARCS_DECLARE_PTR...
定义
class_forward.h:68
arcs::aubo_scope::PersistedVariable
This interface represents variables stored with the installation.
定义
persisted_variable.h:16
arcs::aubo_scope::PersistedVariable::isResolvable
bool isResolvable()
A persisted variable can not be guaranteed to be present.
arcs::aubo_scope::PersistedVariable::PersistedVariable
PersistedVariable()
arcs::aubo_scope::PersistedVariable::DataSwitch
friend class DataSwitch
定义
persisted_variable.h:43
arcs::aubo_scope::PersistedVariable::d_
void * d_
定义
persisted_variable.h:44
arcs::aubo_scope::PersistedVariable::PersistedVariable
PersistedVariable(PersistedVariable &&f)
arcs::aubo_scope::PersistedVariable::~PersistedVariable
virtual ~PersistedVariable()
arcs::aubo_scope::PersistedVariable::PersistedVariable
PersistedVariable(PersistedVariable &f)
arcs::aubo_scope::Variable::VALUE_PERSISTED
@ VALUE_PERSISTED
定义
variable.h:43
arcs::aubo_scope::Variable::Variable
Variable(Variable &f)
arcs::aubo_scope
定义
contribution_provider.h:8
arcs
定义
contribution_provider.h:7
arcs::aubo_scope::PersistedVariableFilter
定义
persisted_variable.h:48
arcs::aubo_scope::PersistedVariableFilter::operator()
bool operator()(VariablePtr var)
定义
persisted_variable.h:49
variable.h
include
aubo_caps
domain
variable
persisted_variable.h
制作者
1.16.1