| 242 | |
| 243 | |
| 244 | void ExtraBytesIf::appendTo(std::vector<char>& ebBytes) |
| 245 | { |
| 246 | size_t offset = ebBytes.size(); |
| 247 | ebBytes.resize(ebBytes.size() + ExtraBytesSpecSize); |
| 248 | LeInserter inserter(ebBytes.data() + offset, ExtraBytesSpecSize); |
| 249 | |
| 250 | uint8_t lastype = lasType(m_type, m_fieldCnt); |
| 251 | uint8_t options = lastype ? 0 : m_size; |
| 252 | |
| 253 | inserter << (uint16_t)0 << lastype << options; |
| 254 | inserter.put(m_name, 32); |
| 255 | inserter << (uint32_t)0; // Reserved. |
| 256 | for (size_t i = 0; i < 3; ++i) |
| 257 | inserter << (uint64_t)0; // No data field. |
| 258 | for (size_t i = 0; i < 3; ++i) |
| 259 | inserter << (double)0.0; // Min. |
| 260 | for (size_t i = 0; i < 3; ++i) |
| 261 | inserter << (double)0.0; // Max. |
| 262 | for (size_t i = 0; i < 3; ++i) |
| 263 | inserter << m_scale[i]; |
| 264 | for (size_t i = 0; i < 3; ++i) |
| 265 | inserter << m_offset[i]; |
| 266 | inserter.put(m_description, 32); |
| 267 | } |
| 268 | |
| 269 | |
| 270 | void ExtraBytesIf::readFrom(const char *buf) |