AuboStudio SDK  0.6.3
value_factory_provider.h
浏览该文件的文档.
1#ifndef AUBO_SCOPE_VALUE_FACTORY_H
2#define AUBO_SCOPE_VALUE_FACTORY_H
3
6
7namespace arcs {
8namespace aubo_scope {
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 */
21{
22public:
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
36private:
37 friend class DataSwitch;
39 void *d_{ nullptr };
40};
41} // namespace aubo_scope
42} // namespace arcs
43
44#endif
#define ARCS_ABI_EXPORT
#define ARCS_CLASS_FORWARD(C)
Macro that forward declares a class and defines the respective smartpointers through ARCS_DECLARE_PTR...
ValueFactory(ValueFactory &&f)
ExpressionPtr createExpression(const std::string &str)
ExpressionPtr createExpression()
This method instantiates a new ExpressionBuilder to create a single valid expression.