79 int command(
int,
const char *
const *);
172 template <
typename T>
176 if (_num_compressed_bits <
sizeof(_header_field) * 8) {
177 bitset<
sizeof(_header_field) * 8> my_bitset(_header_field);
178 if (my_bitset[_num_compressed_bits - 1] == 1) {
179 for (
size_t i = _num_compressed_bits;
180 i <
sizeof(_header_field) * 8;
185 return static_cast<T
>(my_bitset.to_ulong());
187 return _header_field;
202 static std::string
hexdump(std::string);
206 static std::string
hex_bytes(
const char &,
const uint32_t &);
207 static std::string
hex_bytes(
const int8_t &,
const uint32_t &);
208 static std::string
hex_bytes(
const int16_t &,
const uint32_t &);
209 static std::string
hex_bytes(
const int32_t &,
const uint32_t &);
210 static std::string
hex_bytes(
const int64_t &,
const uint32_t &);
211 static std::string
hex_bytes(
const uint8_t &,
const uint32_t &);
212 static std::string
hex_bytes(
const uint16_t &,
const uint32_t &);
213 static std::string
hex_bytes(
const uint32_t &,
const uint32_t &);
214 static std::string
hex_bytes(
const uint64_t &,
const uint32_t &);
216 static std::string
hexdump(
const char *,
size_t);
218 static std::string
bindump(std::string);
220 static std::string
bindump(
const char *,
size_t);
231 virtual size_t packMyHdr(Packet *,
unsigned char *,
size_t);
233 virtual size_t unpackMyHdr(
unsigned char *,
size_t, Packet *);
254 size_t get(
unsigned char *buffer,
size_t offset,
void *val,
size_t h);
267 size_t put(
unsigned char *buffer,
size_t offset,
void *val,
size_t h);
270 std::vector<packer *>
std::vector< size_t > n_bits
Definition packer.h:224
size_t getPayloadBytesLength()
Definition packer.h:82
virtual size_t packMyHdr(Packet *, unsigned char *, size_t)
Definition packer.cpp:523
static std::string hexdump_nice(std::string)
Definition packer.cpp:697
virtual void printMyHdrMap()
Definition packer.cpp:582
virtual void printMyHdrFields(Packet *)
Definition packer.cpp:608
Packet * unpackHdr(Packet *)
Definition packer.cpp:412
void printMap()
Definition packer.cpp:506
int command(int, const char *const *)
Definition packer.cpp:180
size_t PKT_ID_Bits
Definition packer.h:290
size_t put(unsigned char *buffer, size_t offset, void *val, size_t h)
Definition packer.cpp:685
std::vector< packer * > activePackers
Definition packer.h:271
bool printAllFields
Definition packer.h:286
size_t getHdrBytesLength()
Definition packer.h:88
size_t DUMMY_CONTENT_Bits
Definition packer.h:296
~packer()
Definition packer.cpp:159
static std::string bindump(std::string)
Definition packer.cpp:1113
size_t M_BIT_Bits
Definition packer.h:294
std::string packPayload(Packet *)
Definition packer.cpp:292
virtual void init()
Definition packer.cpp:164
size_t FRAME_OFFSET_Bits
Definition packer.h:292
static std::string hex_bytes(float)
Definition packer.cpp:752
size_t get(unsigned char *buffer, size_t offset, void *val, size_t h)
Definition packer.cpp:673
size_t getMyHdrBinLength()
Definition packer.cpp:661
size_t getHdrBinLength()
Definition packer.cpp:228
size_t hdr_length
Definition packer.h:282
static T restoreSignedValue(T _header_field, const uint32_t &_num_compressed_bits)
Definition packer.h:174
static std::string hexdump(std::string)
Definition packer.cpp:727
int debug_
Definition packer.h:227
size_t payload_length
Definition packer.h:277
Packet * unpackPayload(Packet *)
Definition packer.cpp:433
virtual void printMyHdrField(Packet *, int)
Definition packer.cpp:617
size_t getPayloadBinLength()
Definition packer.cpp:216
std::string packHdr(Packet *)
Definition packer.cpp:234
virtual size_t unpackMyHdr(unsigned char *, size_t, Packet *)
Definition packer.cpp:548
size_t SRC_ID_Bits
Definition packer.h:288
Header of the class providing the Uwal header's description.