nmealib 0.0.4
NMEA 0183/NMEA 2000 parsing library
Loading...
Searching...
No Matches
messageRegistry.cpp
Go to the documentation of this file.
1#include "messageRegistry.hpp"
2
12
13namespace nmealib {
14namespace nmea2000 {
15
17 static MessageRegistry registry;
18 return registry;
19}
20
21std::unique_ptr<Message2000> MessageRegistry::create(std::uint32_t pgn,
22 std::unique_ptr<Message2000> baseMessage) {
23 if (pgn == 128001) {
24 return PGN128001::create(std::move(baseMessage));
25 } else if (pgn == 128259) {
26 return PGN128259::create(std::move(baseMessage));
27 } else if (pgn == 127245) {
28 return PGN127245::create(std::move(baseMessage));
29 } else if (pgn == 127250) {
30 return PGN127250::create(std::move(baseMessage));
31 } else if (pgn == 127251) {
32 return PGN127251::create(std::move(baseMessage));
33 } else if (pgn == 127257) {
34 return PGN127257::create(std::move(baseMessage));
35 } else if (pgn == 129025) {
36 return PGN129025::create(std::move(baseMessage));
37 } else if (pgn == 129026) {
38 return PGN129026::create(std::move(baseMessage));
39 } else if (pgn == 130306) {
40 return PGN130306::create(std::move(baseMessage));
41 } else {
42 return baseMessage;
43 }
44}
45
46} // namespace nmea2000
47} // namespace nmealib
static MessageRegistry & instance()
std::unique_ptr< Message2000 > create(std::uint32_t pgn, std::unique_ptr< Message2000 > baseMessage)