Orocos Real-Time Toolkit  2.8.3
RealTimeTypekitTypes2.cpp
Go to the documentation of this file.
1 /***************************************************************************
2  tag: The SourceWorks Tue Sep 7 00:55:18 CEST 2010 RealTimeTypekitTypes2.cpp
3 
4  RealTimeTypekitTypes2.cpp - description
5  -------------------
6  begin : Tue September 07 2010
7  copyright : (C) 2010 The SourceWorks
8  email : peter@thesourceworks.com
9 
10  ***************************************************************************
11  * This library is free software; you can redistribute it and/or *
12  * modify it under the terms of the GNU General Public *
13  * License as published by the Free Software Foundation; *
14  * version 2 of the License. *
15  * *
16  * As a special exception, you may use this file as part of a free *
17  * software library without restriction. Specifically, if other files *
18  * instantiate templates or use macros or inline functions from this *
19  * file, or you compile this file and link it with other files to *
20  * produce an executable, this file does not by itself cause the *
21  * resulting executable to be covered by the GNU General Public *
22  * License. This exception does not however invalidate any other *
23  * reasons why the executable file might be covered by the GNU General *
24  * Public License. *
25  * *
26  * This library is distributed in the hope that it will be useful, *
27  * but WITHOUT ANY WARRANTY; without even the implied warranty of *
28  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU *
29  * Lesser General Public License for more details. *
30  * *
31  * You should have received a copy of the GNU General Public *
32  * License along with this library; if not, write to the Free Software *
33  * Foundation, Inc., 59 Temple Place, *
34  * Suite 330, Boston, MA 02111-1307 USA *
35  * *
36  ***************************************************************************/
37 
38 
39 
40 #include "rtt-typekit-config.h"
41 #include "Types2.inc"
42 #include "RealTimeTypekit.hpp"
43 #include "../types/Types.hpp"
44 #include "../types/TypeInfoName.hpp"
45 #include "../types/TemplateTypeInfo.hpp"
46 #include "../types/SequenceTypeInfo.hpp"
47 #include "StdTypeInfo.hpp"
48 #include "../types/StructTypeInfo.hpp"
49 
50 #include "../rtt-fwd.hpp"
51 #include "../FlowStatus.hpp"
52 #include "../ConnPolicy.hpp"
53 #include "ConnPolicyType.hpp"
54 #include "TaskContext.hpp"
55 
56 namespace RTT
57 {
58  using namespace std;
59  using namespace detail;
60 
61 
62  namespace types {
66  struct EmptySendHandle {};
67 
68  // load the Orocos specific types:
70  ti->addType( new StdTypeInfo<FlowStatus>("FlowStatus"));
71  ti->addType( new StdTypeInfo<SendStatus>("SendStatus"));
72  ti->addType( new TemplateTypeInfo<PropertyBag, true>("PropertyBag") );
73  ti->addType( new StructTypeInfo<ConnPolicy,false>("ConnPolicy") );
74  ti->addType( new TemplateTypeInfo<EmptySendHandle>("SendHandle") ); //dummy, replaced by real stuff when seen by parser.
75  ti->addType( new TemplateTypeInfo<TaskContext*>("TaskContext"));
76  }
77  }
78 }
79 
80 
This template class allows user types to be used in all Orocos primitives.
STL namespace.
This is a placeholder for scripting purposes.
Type Information for data types that are structs, ie all user data types fall in this category...
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.
Definition: Activity.cpp:51
boost::shared_ptr< TypeInfoRepository > shared_ptr
void loadOrocosTypes(TypeInfoRepository::shared_ptr ti)
Type information for standard C types or structs of which no introspection is required.
Definition: StdTypeInfo.hpp:58