Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
include
ros
builtin_message_traits.h
Go to the documentation of this file.
1
/*
2
* Copyright (C) 2009, Willow Garage, Inc.
3
*
4
* Redistribution and use in source and binary forms, with or without
5
* modification, are permitted provided that the following conditions are met:
6
* * Redistributions of source code must retain the above copyright notice,
7
* this list of conditions and the following disclaimer.
8
* * Redistributions in binary form must reproduce the above copyright
9
* notice, this list of conditions and the following disclaimer in the
10
* documentation and/or other materials provided with the distribution.
11
* * Neither the names of Willow Garage, Inc. nor the names of its
12
* contributors may be used to endorse or promote products derived from
13
* this software without specific prior written permission.
14
*
15
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
16
* AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
17
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
18
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
19
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
20
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
21
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
22
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
23
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
24
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
25
* POSSIBILITY OF SUCH DAMAGE.
26
*/
27
28
#ifndef ROSLIB_BUILTIN_MESSAGE_TRAITS_H
29
#define ROSLIB_BUILTIN_MESSAGE_TRAITS_H
30
31
#include "
message_traits.h
"
32
#include "
ros/time.h
"
33
34
namespace
ros
35
{
36
namespace
message_traits
37
{
38
39
#define ROSLIB_CREATE_SIMPLE_TRAITS(Type) \
40
template<> struct IsSimple<Type> : public TrueType {}; \
41
template<> struct IsFixedSize<Type> : public TrueType {};
42
43
ROSLIB_CREATE_SIMPLE_TRAITS
(uint8_t)
44
ROSLIB_CREATE_SIMPLE_TRAITS
(int8_t)
45
ROSLIB_CREATE_SIMPLE_TRAITS
(uint16_t)
46
ROSLIB_CREATE_SIMPLE_TRAITS
(int16_t)
47
ROSLIB_CREATE_SIMPLE_TRAITS
(uint32_t)
48
ROSLIB_CREATE_SIMPLE_TRAITS
(int32_t)
49
ROSLIB_CREATE_SIMPLE_TRAITS
(uint64_t)
50
ROSLIB_CREATE_SIMPLE_TRAITS
(int64_t)
51
ROSLIB_CREATE_SIMPLE_TRAITS
(
float
)
52
ROSLIB_CREATE_SIMPLE_TRAITS
(
double
)
53
ROSLIB_CREATE_SIMPLE_TRAITS
(Time)
54
ROSLIB_CREATE_SIMPLE_TRAITS
(Duration)
55
56
// because std::vector<bool> is not a true vector, bool is not a simple type
57
template<> struct
IsFixedSize
<
bool
> : public
TrueType
{};
58
59
}
// namespace message_traits
60
}
// namespace ros
61
62
#endif // ROSLIB_BUILTIN_MESSAGE_TRAITS_H
time.h
ros::message_traits::IsFixedSize
A fixed-size datatype is one whose size is constant, i.e. it has no variable-length arrays or strings...
Definition:
message_traits.h:101
ROSLIB_CREATE_SIMPLE_TRAITS
#define ROSLIB_CREATE_SIMPLE_TRAITS(Type)
Definition:
builtin_message_traits.h:39
ros
message_traits.h
ros::message_traits::TrueType
Base type for compile-type true/false tests. Compatible with Boost.MPL. classes inheriting from this ...
Definition:
message_traits.h:77
roscpp_traits
Author(s): Josh Faust
autogenerated on Mon Jul 27 2020 03:22:43