Main Page
Namespaces
Namespace List
Namespace Members
All
Functions
Variables
Typedefs
Classes
Class List
Class Hierarchy
Class Members
All
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
v
w
~
Functions
a
b
c
d
e
f
g
i
n
o
p
r
s
v
w
~
Variables
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
r
s
t
u
w
Enumerations
Enumerator
Files
File List
File Members
All
Functions
include
novatel_gps_driver
parsers
heading2.h
Go to the documentation of this file.
1
// *****************************************************************************
2
//
3
// Copyright (c) 2017, Southwest Research Institute® (SwRI®)
4
// All rights reserved.
5
//
6
// Redistribution and use in source and binary forms, with or without
7
// modification, are permitted provided that the following conditions are met:
8
// * Redistributions of source code must retain the above copyright
9
// notice, this list of conditions and the following disclaimer.
10
// * Redistributions in binary form must reproduce the above copyright
11
// notice, this list of conditions and the following disclaimer in the
12
// documentation and/or other materials provided with the distribution.
13
// * Neither the name of Southwest Research Institute® (SwRI®) nor the
14
// names of its contributors may be used to endorse or promote products
15
// derived from this software without specific prior written permission.
16
//
17
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
18
// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
19
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
20
// ARE DISCLAIMED. IN NO EVENT SHALL SOUTHWEST RESEARCH INSTITUTE BE LIABLE FOR ANY
21
// DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
22
// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
23
// LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
24
// ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
25
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
26
// SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
27
//
28
// *****************************************************************************
29
30
#ifndef NOVATEL_GPS_DRIVER_HEADING2_H
31
#define NOVATEL_GPS_DRIVER_HEADING2_H
32
33
#include <novatel_gps_msgs/NovatelHeading2.h>
34
35
#include <
novatel_gps_driver/parsers/parsing_utils.h
>
36
#include <
novatel_gps_driver/parsers/message_parser.h
>
37
38
namespace
novatel_gps_driver
39
{
40
class
Heading2Parser
:
public
MessageParser
<novatel_gps_msgs::NovatelHeading2Ptr>
41
{
42
public
:
43
uint32_t
GetMessageId
()
const override
;
44
45
const
std::string
GetMessageName
()
const override
;
46
47
novatel_gps_msgs::NovatelHeading2Ptr
ParseBinary
(
const
BinaryMessage
& bin_msg) noexcept(
false
)
override
;
48
49
novatel_gps_msgs::NovatelHeading2Ptr
ParseAscii
(
const
NovatelSentence
& sentence) noexcept(
false
)
override
;
50
51
static
constexpr uint16_t
MESSAGE_ID
= 1335;
52
static
constexpr
size_t
BINARY_LENGTH
= 48;
53
static
constexpr
size_t
ASCII_LENGTH
= 18;
54
static
const
std::string
MESSAGE_NAME
;
55
56
private
:
57
/*
58
* @brief Converts a Solution Source byte mask to the format used in the NovatelHeading2 ros message
59
*
60
* ParseException thrown if source_mask cannot be parsed
61
* @param[in] source_mask The byte to parse
62
* @return NovatelHeading2.solution_source enum value
63
*/
64
uint8_t
SolutionSourceToMsgEnum
(uint8_t source_mask) noexcept(
false
);
65
};
66
}
67
68
#endif //NOVATEL_GPS_DRIVER_HEADING2_H
novatel_gps_driver::Heading2Parser::ParseBinary
novatel_gps_msgs::NovatelHeading2Ptr ParseBinary(const BinaryMessage &bin_msg) noexcept(false) override
Converts bin_msg into a ROS message pointer and returns it.
Definition:
heading2.cpp:50
novatel_gps_driver::Heading2Parser::SolutionSourceToMsgEnum
uint8_t SolutionSourceToMsgEnum(uint8_t source_mask) noexcept(false)
Definition:
heading2.cpp:176
novatel_gps_driver::Heading2Parser::BINARY_LENGTH
static constexpr size_t BINARY_LENGTH
Definition:
heading2.h:52
novatel_gps_driver::Heading2Parser::MESSAGE_ID
static constexpr uint16_t MESSAGE_ID
Definition:
heading2.h:51
novatel_gps_driver::NovatelSentence
Definition:
novatel_sentence.h:42
novatel_gps_driver::MessageParser
Definition:
message_parser.h:59
novatel_gps_driver::BinaryMessage
Definition:
binary_message.h:42
novatel_gps_driver::Heading2Parser::MESSAGE_NAME
static const std::string MESSAGE_NAME
Definition:
heading2.h:54
novatel_gps_driver::Heading2Parser::GetMessageName
const std::string GetMessageName() const override
Definition:
heading2.cpp:45
novatel_gps_driver
Definition:
binary_header.h:37
novatel_gps_driver::Heading2Parser::ASCII_LENGTH
static constexpr size_t ASCII_LENGTH
Definition:
heading2.h:53
parsing_utils.h
novatel_gps_driver::Heading2Parser::ParseAscii
novatel_gps_msgs::NovatelHeading2Ptr ParseAscii(const NovatelSentence &sentence) noexcept(false) override
Converts sentence into a ROS message pointer and returns it.
Definition:
heading2.cpp:115
novatel_gps_driver::Heading2Parser::GetMessageId
uint32_t GetMessageId() const override
Definition:
heading2.cpp:40
novatel_gps_driver::Heading2Parser
Definition:
heading2.h:40
message_parser.h
novatel_gps_driver
Author(s):
autogenerated on Sun Oct 1 2023 02:58:57