- Aldebaran documentation |
- C++ Libraries |
- index

libqi-api 2.8.7.4

- Main Page
- Related Pages
- Namespaces
- Classes
- Files
- Examples

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
typedispatcher.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_TYPEDISPATCHER_HPP_
8 #define _QI_TYPE_TYPEDISPATCHER_HPP_
9
10 #include <qi/type/typeinterface.hpp>
11
12 namespace qi {
13
17 template<typename Dispatcher>
18 Dispatcher& typeDispatch(Dispatcher& dispatcher, AnyReference value);
19
20
21 // class QI_API TypeDispatcher
22 // {
23 // public:
24 // void visitUnknown(qi::AnyReference value);
25 // void visitVoid();
26 // void visitInt(qi::int64_t value, bool isSigned, int byteSize);
27 // void visitFloat(double value, int byteSize);
28 // void visitString(char* data, size_t size);
29 // void visitList(qi::AnyIterator begin, qi::AnyIterator end);
30 // void visitMap(qi::AnyIterator begin, qi::AnyIterator end);
31 // void visitObject(qi::GenericObject value);
32 // void visitPointer(qi::AnyReference pointee);
33 // void visitTuple(const std::string &className, const std::vector<qi::AnyReference>& tuple, const std::vector<std::string>& elementNames);
34 // void visitDynamic(qi::AnyReference pointee);
35 // void visitRaw(qi::AnyReference value);
36 // void visitIterator(qi::AnyReference value);
37 // void visitAnyObject(qi::AnyObject& ptr);
38 // void visitOptional(qi::AnyReference value);
39 // };
40
41 }
42
43 #include <qi/type/detail/typedispatcher.hxx>
44
45 #endif // _QITYPE_TYPEDISPATCHER_HPP_
qi::typeDispatch
TypeDispatcher & typeDispatch(TypeDispatcher &v, AnyReference value)
Definition: typedispatcher.hxx:13
typedispatcher.hxx
typeinterface.hpp