1 #ifndef WWTOOLS_UTIL_WRITE_HPP
2 #define WWTOOLS_UTIL_WRITE_HPP
20 inline void big_endian(
const char *data, std::ostream &os) {
21 char arr_data[
sizeof(T)];
22 std::memcpy(arr_data, data,
sizeof(T));
23 for (
int i =
sizeof(T) - 1; i >= 0; i--)
34 template <
typename T>
inline void big_endian(
const T &data, std::ostream &os) {
35 big_endian<T>(
reinterpret_cast<const char *
>(&data), os);
47 char arr_data[
sizeof(T)];
48 std::memcpy(arr_data, data,
sizeof(T));
49 for (
int i = 0; i <
sizeof(T); i++)
62 little_endian<T>(
reinterpret_cast<const char *
>(&data), os);
72 inline void raw_data(
const char *data,
size_t size, std::ostream &os) {