libcluon  0.0.148
LCMToGenericMessage.hpp
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2017-2018 Christian Berger
3  *
4  * This Source Code Form is subject to the terms of the Mozilla Public
5  * License, v. 2.0. If a copy of the MPL was not distributed with this
6  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
7  */
8 
9 #ifndef CLUON_LCMTOGENERICMESSAGE_HPP
10 #define CLUON_LCMTOGENERICMESSAGE_HPP
11 
12 #include "cluon/GenericMessage.hpp"
13 #include "cluon/MetaMessage.hpp"
14 #include "cluon/cluon.hpp"
15 
16 #include <cstdint>
17 #include <map>
18 #include <string>
19 #include <vector>
20 
21 namespace cluon {
26  private:
27  LCMToGenericMessage(const LCMToGenericMessage &) = delete;
29  LCMToGenericMessage &operator=(const LCMToGenericMessage &) = delete;
30  LCMToGenericMessage &operator=(LCMToGenericMessage &&) = delete;
31 
32  public:
33  LCMToGenericMessage() = default;
34 
43  int32_t setMessageSpecification(const std::string &ms) noexcept;
44 
51  cluon::GenericMessage getGenericMessage(const std::string &data) noexcept;
52 
53  private:
54  std::vector<cluon::MetaMessage> m_listOfMetaMessages{};
55  std::map<std::string, cluon::MetaMessage> m_scopeOfMetaMessages{};
56 };
57 } // namespace cluon
58 #endif
Definition: cluon.hpp:65
#define LIBCLUON_API
Definition: cluon.hpp:56
Definition: GenericMessage.hpp:170
Definition: LCMToGenericMessage.hpp:25