libqi-api  2.8.7.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
fwd.hpp
Go to the documentation of this file.
1 #pragma once
2 /*
3 ** Copyright (C) 2013 Aldebaran Robotics
4 ** See COPYING for the license
5 */
6 
7 #ifndef _QI_TYPE_FWD_HPP_
8 #define _QI_TYPE_FWD_HPP_
9 
10 #include <boost/shared_ptr.hpp>
11 #include <boost/type_traits/is_base_of.hpp>
12 #include <vector>
13 
14 namespace qi
15 {
16  class TypeInfo;
17 
18  class TypeInterface;
19  class IntTypeInterface;
20  class FloatTypeInterface;
21  class StringTypeInterface;
22  class RawTypeInterface;
23  class PointerTypeInterface;
24  class ListTypeInterface;
25  class MapTypeInterface;
26  class StructTypeInterface;
27  class DynamicTypeInterface;
28  class OptionalTypeInterface;
29 
30  class AutoAnyReference;
31 
32  class AnyReference;
33  using AnyReferenceVector = std::vector<AnyReference>;
34 
35  class AnyValue;
36  using AnyValueVector = std::vector<AnyValue>;
37 
38  class AnyIterator;
39 
40  class Manageable;
41 
42  class Empty;
43  class Proxy;
44  template<typename T=Empty> class Object;
45  using AnyObject = Object<Empty>;
46  template<typename T=Empty> class WeakObject;
47  using AnyWeakObject = WeakObject<Empty>;
48 
49  class GenericObject;
50 
51  class Signature;
52 
53  //warning update the C enum when updating this one.
54  enum TypeKind
55  {
74  };
75 
76 }
77 
78 #endif // _QITYPE_FWD_HPP_
std::vector< AnyReference > AnyReferenceVector
WeakObject< Empty > AnyWeakObject
Definition: object.hxx:361
Object< Empty > AnyObject
Definition: anyobject.hpp:21
TypeKind
Definition: fwd.hpp:54
std::vector< AnyValue > AnyValueVector
Definition: anyvalue.hpp:116