Odil
A C++11 library for the DICOM standard
Loading...
Searching...
No Matches
endian.h File Reference
#include "odil/odil.h"
Include dependency graph for endian.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  odil

Macros

#define ODIL_SWAP

Enumerations

enum class  odil::ByteOrdering { odil::LittleEndian , odil::BigEndian }

Functions

ByteOrdering odil::get_endianness ()
template<typename T>
odil::host_to_big_endian (T const &value)
template<typename T>
odil::host_to_little_endian (T const &value)
template<typename T>
odil::big_endian_to_host (T const &value)
template<typename T>
odil::little_endian_to_host (T const &value)

Variables

ByteOrdering const odil::byte_ordering

Macro Definition Documentation

◆ ODIL_SWAP

#define ODIL_SWAP
Value:
auto source = reinterpret_cast<char const *>(&value); \
auto const end = source + sizeof(value); \
T result; \
auto destination = reinterpret_cast<char *>(&result) + sizeof(result) - 1; \
while(source != end) \
{ \
*destination = *source; \
++source; \
--destination; \
}