ReadWriteHelper.hpp
Go to the documentation of this file.
1 // this is for emacs file handling -*- mode: c++; indent-tabs-mode: nil -*-
2 
3 // -- BEGIN LICENSE BLOCK ----------------------------------------------
4 
24 // -- END LICENSE BLOCK ------------------------------------------------
25 
26 //----------------------------------------------------------------------
33 //----------------------------------------------------------------------
34 
35 #ifndef SICK_SAFETYSCANNERS_DATA_PROCESSING_READWRITEHELPER_HPP
36 #define SICK_SAFETYSCANNERS_DATA_PROCESSING_READWRITEHELPER_HPP
37 
38 #include <stdint.h>
39 
40 namespace sick {
41 namespace read_write_helper {
42 
53 inline void writeUint8(std::vector<uint8_t>::iterator it, const uint8_t v)
54 {
55  *(it + 0) = v;
56 }
57 
65 inline void writeUint8BigEndian(std::vector<uint8_t>::iterator it, const uint8_t v)
66 {
67  writeUint8(it, v);
68 }
69 
77 inline void writeUint8LittleEndian(std::vector<uint8_t>::iterator it, const uint8_t v)
78 {
79  writeUint8(it, v);
80 }
81 
89 inline void writeInt8(std::vector<uint8_t>::iterator it, const uint8_t v)
90 {
91  writeUint8(it, v);
92 }
93 
101 inline void writeInt8BigEndian(std::vector<uint8_t>::iterator it, const uint8_t v)
102 {
103  writeInt8(it, v);
104 }
105 
113 inline void writeInt8LittleEndian(std::vector<uint8_t>::iterator it, const uint8_t v)
114 {
115  writeInt8(it, v);
116 }
117 
125 inline void writeUint16BigEndian(std::vector<uint8_t>::iterator it, const uint16_t v)
126 {
127  *(it + 0) = (v & 0xff00) >> 8;
128  *(it + 1) = v & 0xff;
129 }
130 
138 inline void writeUint16LittleEndian(std::vector<uint8_t>::iterator it, const uint16_t v)
139 {
140  *(it + 0) = v & 0xff;
141  *(it + 1) = (v & 0xff00) >> 8;
142 }
143 
144 
152 inline void writeUint32BigEndian(std::vector<uint8_t>::iterator it, const uint32_t v)
153 {
154  *(it + 0) = (v & 0xff000000) >> 24;
155  *(it + 1) = (v & 0xff0000) >> 16;
156  *(it + 2) = (v & 0xff00) >> 8;
157  *(it + 3) = v & 0xff;
158 }
159 
167 inline void writeUint32LittleEndian(std::vector<uint8_t>::iterator it, const uint32_t v)
168 {
169  *(it + 3) = (v & 0xff000000) >> 24;
170  *(it + 2) = (v & 0xff0000) >> 16;
171  *(it + 1) = (v & 0xff00) >> 8;
172  *(it + 0) = v & 0xff;
173 }
174 
182 inline void writeInt32LittleEndian(std::vector<uint8_t>::iterator it, const int32_t v)
183 {
184  *(it + 3) = (v & 0xff000000) >> 24;
185  *(it + 2) = (v & 0xff0000) >> 16;
186  *(it + 1) = (v & 0xff00) >> 8;
187  *(it + 0) = v & 0xff;
188 }
189 
198 inline uint8_t readUint8(std::vector<uint8_t>::const_iterator it)
199 {
200  return *(it + 0);
201 }
202 
211 inline uint8_t readUint8BigEndian(std::vector<uint8_t>::const_iterator it)
212 {
213  return readUint8(it);
214 }
215 
224 inline uint8_t readUint8LittleEndian(std::vector<uint8_t>::const_iterator it)
225 {
226  return readUint8(it);
227 }
228 
237 inline int8_t readInt8(std::vector<uint8_t>::const_iterator it)
238 {
239  return readUint8(it);
240 }
241 
250 inline int8_t readInt8BigEndian(std::vector<uint8_t>::const_iterator it)
251 {
252  return readInt8(it);
253 }
254 
263 inline int8_t readInt8LittleEndian(std::vector<uint8_t>::const_iterator it)
264 {
265  return readInt8(it);
266 }
267 
276 inline uint16_t readUint16BigEndian(std::vector<uint8_t>::const_iterator it)
277 {
278  return (*(it + 0) << 8) + *(it + 1);
279 }
280 
289 inline uint16_t readUint16LittleEndian(std::vector<uint8_t>::const_iterator it)
290 {
291  return (*(it + 1) << 8) + *(it + 0);
292 }
293 
302 inline int16_t readInt16BigEndian(std::vector<uint8_t>::const_iterator it)
303 {
304  return readUint16BigEndian(it);
305 }
306 
315 inline int16_t readInt16LittleEndian(std::vector<uint8_t>::const_iterator it)
316 {
317  return readUint16LittleEndian(it);
318 }
319 
328 inline uint32_t readUint32BigEndian(std::vector<uint8_t>::const_iterator it)
329 {
330  return (*(it + 0) << 24) + (*(it + 1) << 16) + (*(it + 2) << 8) + *(it + 3);
331 }
332 
341 inline uint32_t readUint32LittleEndian(std::vector<uint8_t>::const_iterator it)
342 {
343  return (*(it + 3) << 24) + (*(it + 2) << 16) + (*(it + 1) << 8) + *(it + 0);
344 }
345 
354 inline int32_t readInt32BigEndian(std::vector<uint8_t>::const_iterator it)
355 {
356  return (*(it + 0) << 24) + (*(it + 1) << 16) + (*(it + 2) << 8) + *(it + 3);
357 }
358 
359 
368 inline int32_t readInt32LittleEndian(std::vector<uint8_t>::const_iterator it)
369 {
370  return (*(it + 3) << 24) + (*(it + 2) << 16) + (*(it + 1) << 8) + *(it + 0);
371 }
372 
373 } // namespace read_write_helper
374 } // namespace sick
375 
376 #endif // SICK_SAFETYSCANNERS_DATA_PROCESSING_READWRITEHELPER_HPP
sick::read_write_helper::readUint8
uint8_t readUint8(std::vector< uint8_t >::const_iterator it)
Read an unsigned 8-bit integer at offset.
Definition: ReadWriteHelper.hpp:198
sick::read_write_helper::writeUint16BigEndian
void writeUint16BigEndian(std::vector< uint8_t >::iterator it, const uint16_t v)
Writes an unsigned 16-bit integer to a buffer at offset in big endian encoding.
Definition: ReadWriteHelper.hpp:125
sick
Definition: ApplicationNameVariableCommand.h:43
sick::read_write_helper::writeUint8
void writeUint8(std::vector< uint8_t >::iterator it, const uint8_t v)
Helper Functions read and write data at a certain place in a buffer.
Definition: ReadWriteHelper.hpp:53
sick::read_write_helper::readUint32LittleEndian
uint32_t readUint32LittleEndian(std::vector< uint8_t >::const_iterator it)
Read an unsigned 32-bit integer at offset in little endian encoding.
Definition: ReadWriteHelper.hpp:341
sick::read_write_helper::readUint8LittleEndian
uint8_t readUint8LittleEndian(std::vector< uint8_t >::const_iterator it)
Read an unsigned 8-bit integer at offset in big little encoding.
Definition: ReadWriteHelper.hpp:224
sick::read_write_helper::writeUint16LittleEndian
void writeUint16LittleEndian(std::vector< uint8_t >::iterator it, const uint16_t v)
Writes an unsigned 16-bit integer to a buffer at offset in little endian encoding.
Definition: ReadWriteHelper.hpp:138
sick::read_write_helper::writeUint32LittleEndian
void writeUint32LittleEndian(std::vector< uint8_t >::iterator it, const uint32_t v)
Writes an unsigned 32-bit integer to a buffer at offset in little endian encoding.
Definition: ReadWriteHelper.hpp:167
sick::read_write_helper::readUint32BigEndian
uint32_t readUint32BigEndian(std::vector< uint8_t >::const_iterator it)
Read an unsigned 32-bit integer at offset in big endian encoding.
Definition: ReadWriteHelper.hpp:328
sick::read_write_helper::writeInt8
void writeInt8(std::vector< uint8_t >::iterator it, const uint8_t v)
Writes a signed 8-bit integer to a buffer at offset.
Definition: ReadWriteHelper.hpp:89
sick::read_write_helper::readInt16LittleEndian
int16_t readInt16LittleEndian(std::vector< uint8_t >::const_iterator it)
Read a signed 16-bit integer at offset in little endian encoding.
Definition: ReadWriteHelper.hpp:315
sick::read_write_helper::readInt16BigEndian
int16_t readInt16BigEndian(std::vector< uint8_t >::const_iterator it)
Read a signed 16-bit integer at offset in big endian encoding.
Definition: ReadWriteHelper.hpp:302
sick::read_write_helper::writeInt8LittleEndian
void writeInt8LittleEndian(std::vector< uint8_t >::iterator it, const uint8_t v)
Writes a signed 8-bit integer to a buffer at offset in little endian encoding.
Definition: ReadWriteHelper.hpp:113
sick::read_write_helper::readUint8BigEndian
uint8_t readUint8BigEndian(std::vector< uint8_t >::const_iterator it)
Read an unsigned 8-bit integer at offset in big endian encoding.
Definition: ReadWriteHelper.hpp:211
sick::read_write_helper::readInt8LittleEndian
int8_t readInt8LittleEndian(std::vector< uint8_t >::const_iterator it)
Read a signed 8-bit integer at offset in little endian encoding.
Definition: ReadWriteHelper.hpp:263
sick::read_write_helper::writeUint8LittleEndian
void writeUint8LittleEndian(std::vector< uint8_t >::iterator it, const uint8_t v)
Writes an unsigned 8-bit integer to a buffer at offset in little endian encoding.
Definition: ReadWriteHelper.hpp:77
sick::read_write_helper::writeUint32BigEndian
void writeUint32BigEndian(std::vector< uint8_t >::iterator it, const uint32_t v)
Writes an unsigned 32-bit integer to a buffer at offset in big endian encoding.
Definition: ReadWriteHelper.hpp:152
sick::read_write_helper::writeInt8BigEndian
void writeInt8BigEndian(std::vector< uint8_t >::iterator it, const uint8_t v)
Writes a signed 8-bit integer to a buffer at offset in big endian encoding.
Definition: ReadWriteHelper.hpp:101
sick::read_write_helper::readInt8
int8_t readInt8(std::vector< uint8_t >::const_iterator it)
Read a signed 8-bit integer at offset.
Definition: ReadWriteHelper.hpp:237
sick::read_write_helper::readInt32BigEndian
int32_t readInt32BigEndian(std::vector< uint8_t >::const_iterator it)
Read an unsigned 32-bit integer at offset in big endian encoding.
Definition: ReadWriteHelper.hpp:354
sick::read_write_helper::readInt8BigEndian
int8_t readInt8BigEndian(std::vector< uint8_t >::const_iterator it)
Read a signed 8-bit integer at offset in big endian encoding.
Definition: ReadWriteHelper.hpp:250
sick::read_write_helper::readUint16BigEndian
uint16_t readUint16BigEndian(std::vector< uint8_t >::const_iterator it)
Read an unsigned 16-bit integer at offset in big endian encoding.
Definition: ReadWriteHelper.hpp:276
sick::read_write_helper::writeUint8BigEndian
void writeUint8BigEndian(std::vector< uint8_t >::iterator it, const uint8_t v)
Writes an unsigned 8-bit integer to a buffer at offset in big endian encoding.
Definition: ReadWriteHelper.hpp:65
sick::read_write_helper::readUint16LittleEndian
uint16_t readUint16LittleEndian(std::vector< uint8_t >::const_iterator it)
Read an unsigned 16-bit integer at offset in little endian encoding.
Definition: ReadWriteHelper.hpp:289
sick::read_write_helper::writeInt32LittleEndian
void writeInt32LittleEndian(std::vector< uint8_t >::iterator it, const int32_t v)
Writes an unsigned 32-bit integer to a buffer at offset in little endian encoding.
Definition: ReadWriteHelper.hpp:182
sick::read_write_helper::readInt32LittleEndian
int32_t readInt32LittleEndian(std::vector< uint8_t >::const_iterator it)
Read an unsigned 32-bit integer at offset in little endian encoding.
Definition: ReadWriteHelper.hpp:368


sick_safetyscanners
Author(s): Lennart Puck
autogenerated on Fri Jun 21 2024 02:40:51