encode pk, ts and value
| 489 | |
| 490 | // encode pk, ts and value |
| 491 | static inline void EncodeFull(const std::string& pk, uint64_t time, |
| 492 | const char* data, const size_t size, char* buffer, |
| 493 | uint32_t offset) { |
| 494 | buffer += offset; |
| 495 | uint32_t pk_size = pk.length(); |
| 496 | uint32_t total_size = 8 + pk_size + size; |
| 497 | DEBUGLOG("encode total size %u pk size %u", total_size, pk_size); |
| 498 | memcpy(buffer, static_cast<const void*>(&total_size), 4); |
| 499 | memrev32ifbe(buffer); |
| 500 | buffer += 4; |
| 501 | memcpy(buffer, static_cast<const void*>(&pk_size), 4); |
| 502 | memrev32ifbe(buffer); |
| 503 | buffer += 4; |
| 504 | memcpy(buffer, static_cast<const void*>(&time), 8); |
| 505 | memrev64ifbe(buffer); |
| 506 | buffer += 8; |
| 507 | memcpy(buffer, static_cast<const void*>(pk.c_str()), pk_size); |
| 508 | buffer += pk_size; |
| 509 | memcpy(buffer, static_cast<const void*>(data), size); |
| 510 | } |
| 511 | static inline void EncodeFull(const std::string& pk, uint64_t time, |
| 512 | const DataBlock* data, char* buffer, |
| 513 | uint32_t offset) { |