AuboCaps
0.6.0
Main Page
Namespaces
Classes
Files
File List
File Members
include
aubo_caps
domain
value
value_factory_provider.h
Go to the documentation of this file.
1
#ifndef AUBO_SCOPE_VALUE_FACTORY_H
2
#define AUBO_SCOPE_VALUE_FACTORY_H
3
4
#include <
aubo_caps/class_forward.h
>
5
#include <
aubo_caps/domain/value/expression/expression.h
>
6
7
namespace
arcs
{
8
namespace
aubo_scope {
9
ARCS_CLASS_FORWARD
(ValueFactory);
10
11
/**
12
* <h1>Summary</h1>
13
* This interface provides a mean to create immutable value objects using
14
* factories. The {@link SimpleValueFactory} helps creating simple value
15
* objects. The {@link ExpressionBuilder} helps building valid expressions. The
16
* {@link BlendFactory} helps creating blend objects. The {@link
17
* JointPositionFactory} helps creating joint positions objects. The {@link
18
* PoseFactory} helps creating Pose objects.
19
*/
20
class
ARCS_ABI_EXPORT
ValueFactory
21
{
22
public
:
23
ValueFactory
(
ValueFactory
&f);
24
ValueFactory
(
ValueFactory
&&f);
25
virtual
~
ValueFactory
();
26
27
/**
28
* This method instantiates a new {@link ExpressionBuilder} to create a
29
* single valid expression.
30
*
31
* @return the builder to build a single expression.
32
*/
33
ExpressionPtr createExpression();
34
ExpressionPtr createExpression(
const
std::string &str);
35
36
private
:
37
friend
class
DataSwitch;
38
ValueFactory
();
39
void
*d_{
nullptr
};
40
};
41
}
// namespace aubo_scope
42
}
// namespace arcs
43
44
#endif
arcs::aubo_scope::ARCS_CLASS_FORWARD
ARCS_CLASS_FORWARD(GripForceCapability)
class_forward.h
expression.h
ARCS_ABI_EXPORT
#define ARCS_ABI_EXPORT
Definition:
class_forward.h:16
arcs::aubo_scope::ValueFactory
Definition:
value_factory_provider.h:20
arcs
Definition:
contribution_provider.h:7
Generated by
1.8.11