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 * \chinese
14 * 值工厂接口
15 * <h1>概述</h1>
16 * 此接口提供使用工厂创建不可变值对象的方法。{@link SimpleValueFactory} 帮助创建
17 * 简单值对象。{@link ExpressionBuilder} 帮助构建有效表达式。{@link BlendFactory}
18 * 帮助创建过渡对象。{@link JointPositionFactory} 帮助创建关节位置对象。
19 * {@link PoseFactory} 帮助创建姿态对象。
20 * \endchinese
21 * \english
22 * ValueFactory
23 * <h1>Summary</h1>
24 * This interface provides a mean to create immutable value objects using
25 * factories. The {@link SimpleValueFactory} helps creating simple value
26 * objects. The {@link ExpressionBuilder} helps building valid expressions. The
27 * {@link BlendFactory} helps creating blend objects. The {@link
28 * JointPositionFactory} helps creating joint positions objects. The {@link
29 * PoseFactory} helps creating Pose objects.
30 * \endenglish
31 */
33{
34public:
37 virtual ~ValueFactory();
38
39 /**
40 * \chinese
41 * 实例化一个新的{@link ExpressionBuilder}来创建单个有效表达式。
42 * @return 表达式构建器。
43 * \endchinese
44 * \english
45 * This method instantiates a new {@link ExpressionBuilder} to create a
46 * single valid expression.
47 *
48 * @return the builder to build a single expression.
49 * \endenglish
50 */
51 ExpressionPtr createExpression();
52 ExpressionPtr createExpression(const std::string &str);
53
54private:
55 friend class DataSwitch;
57 void *d_{ nullptr };
58};
59} // namespace aubo_scope
60} // namespace arcs
61
62#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()
\chinese 实例化一个新的ExpressionBuilder来创建单个有效表达式。