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 * @ingroup ApplicationApi
13 * <h1>Summary</h1>
14 * This interface provides a mean to create immutable value objects using
15 * factories. The {@link SimpleValueFactory} helps creating simple value
16 * objects. The {@link ExpressionBuilder} helps building valid expressions. The
17 * {@link BlendFactory} helps creating blend objects. The {@link
18 * JointPositionFactory} helps creating joint positions objects. The {@link
19 * PoseFactory} helps creating Pose objects.
20 */
22{
23public:
26 virtual ~ValueFactory();
27
28 /**
29 * This method instantiates a new {@link ExpressionBuilder} to create a
30 * single valid expression.
31 *
32 * @return the builder to build a single expression.
33 */
34 ExpressionPtr createExpression();
35 ExpressionPtr createExpression(const std::string &str);
36
37private:
38 friend class DataSwitch;
40 void *d_{ nullptr };
41};
42} // namespace aubo_scope
43} // namespace arcs
44
45#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.