9 #ifndef CLUON_TOLCMVISITOR_HPP 10 #define CLUON_TOLCMVISITOR_HPP 38 std::string encodedData(
bool withHash =
true)
const noexcept;
44 void preVisit(int32_t
id,
const std::string &shortName,
const std::string &longName) noexcept;
45 void postVisit() noexcept;
47 void visit(uint32_t
id, std::string &&typeName, std::string &&name,
bool &v) noexcept;
48 void visit(uint32_t
id, std::string &&typeName, std::string &&name,
char &v) noexcept;
49 void visit(uint32_t
id, std::string &&typeName, std::string &&name, int8_t &v) noexcept;
50 void visit(uint32_t
id, std::string &&typeName, std::string &&name, uint8_t &v) noexcept;
51 void visit(uint32_t
id, std::string &&typeName, std::string &&name, int16_t &v) noexcept;
52 void visit(uint32_t
id, std::string &&typeName, std::string &&name, uint16_t &v) noexcept;
53 void visit(uint32_t
id, std::string &&typeName, std::string &&name, int32_t &v) noexcept;
54 void visit(uint32_t
id, std::string &&typeName, std::string &&name, uint32_t &v) noexcept;
55 void visit(uint32_t
id, std::string &&typeName, std::string &&name, int64_t &v) noexcept;
56 void visit(uint32_t
id, std::string &&typeName, std::string &&name, uint64_t &v) noexcept;
57 void visit(uint32_t
id, std::string &&typeName, std::string &&name,
float &v) noexcept;
58 void visit(uint32_t
id, std::string &&typeName, std::string &&name,
double &v) noexcept;
59 void visit(uint32_t
id, std::string &&typeName, std::string &&name, std::string &v) noexcept;
62 void visit(uint32_t &
id, std::string &&typeName, std::string &&name, T &value) noexcept {
70 value.accept(nestedLCMEncoder);
72 constexpr
bool WITH_HASH{
false};
73 const std::string s = nestedLCMEncoder.
encodedData(WITH_HASH);
74 m_buffer.write(s.c_str(),
static_cast<std::streamsize
>(s.size()));
77 m_hashes.push_back(nestedLCMEncoder.hash());
81 int64_t hash()
const noexcept;
82 void calculateHash(
char c) noexcept;
83 void calculateHash(
const std::string &s) noexcept;
86 int64_t m_hash{0x12345678};
87 std::stringstream m_buffer{
""};
88 std::vector<int64_t> m_hashes{};
std::string encodedData(bool withHash=true) const noexcept
Definition: ToLCMVisitor.cpp:21
#define LIBCLUON_API
Definition: cluon.hpp:56
Definition: ToLCMVisitor.hpp:23
void visit(uint32_t &id, std::string &&typeName, std::string &&name, T &value) noexcept
Definition: ToLCMVisitor.hpp:62