MeVisLab Toolbox Reference
mlObjMgrDataTypes.h
Go to the documentation of this file.
1 /*************************************************************************************
2 **
3 ** Copyright 2007, MeVis Medical Solutions AG
4 **
5 ** The user may use this file in accordance with the license agreement provided with
6 ** the Software or, alternatively, in accordance with the terms contained in a
7 ** written agreement between the user and MeVis Medical Solutions AG.
8 **
9 ** For further information use the contact form at https://www.mevislab.de/contact
10 **
11 **************************************************************************************/
12 
13 #ifndef ML_OBJ_MGR_DATA_TYPES_H
14 #define ML_OBJ_MGR_DATA_TYPES_H
15 
16 
18 
19 #include "mlObjMgrSubDataType.h"
20 #include <mlLinearAlgebra.h>
21 
22 #include <boost/shared_ptr.hpp>
23 
24 #include "mlBase.h"
25 
26 // omAttribute_Message
28 
29 // Constants for all registered data types
30 #define omDATATYPE_INT32 "omData_MLint32"
31 #define omDATATYPE_BOOL "omData_bool"
32 #define omDATATYPE_DOUBLE "omData_double"
33 #define omDATATYPE_MAT4 "omData_mat4"
34 #define omDATATYPE_INT32VEC "omData_std_MLint32Vec"
35 #define omDATATYPE_STRING "omData_std_string"
36 #define omDATATYPE_MESSAGE "omData_omMessage"
37 #define omDATATYPE_VEC3 "omData_vec3"
38 #define omDATATYPE_VEC4 "omData_vec4"
39 #define omDATATYPE_VEC3VEC "omData_std_vec3Vec"
40 #define omDATATYPE_BASEPTR "omData_BasePtr"
41 
42 ML_START_NAMESPACE
43 
44  // These typedef are declared for simplicity of the DATA_TYPE_HEADER* macros
45  typedef std::string std_string;
46  typedef std::vector<MLint32> std_MLint32Vec;
47  typedef std::vector<Vector3> std_vec3Vec;
48  typedef boost::shared_ptr<Base> BasePtr;
49 
51  // Declaration of attribute data types
52  //
53  // To add new types: see also mlObjMgrObject.cpp and MLObjMgrInit.cpp
54  // The macros are defined in mlObjMgrSubAttribute.h
55 
57  DATA_TYPE_HEADER(bool, bool)
58  DATA_TYPE_HEADER(double, double)
66 
67 
68 
69  std::list<std::string> omGetKnownDataTypes();
70 
71 ML_END_NAMESPACE
72 
73 #endif // __mlObjMgrDataTypes_H
#define DATA_TYPE_HEADER(dataTypeName, dataType)
signed int MLint32
Definition: mlTypeDefs.h:167
std::string std_string
std::vector< MLint32 > std_MLint32Vec
std::list< std::string > omGetKnownDataTypes()
Returns a list of all registered attribute type names.
std::vector< Vector3 > std_vec3Vec
boost::shared_ptr< Base > BasePtr