28 #ifndef itkByteSwapper_h
29 #define itkByteSwapper_h
49 template<
typename T >
66 static bool SystemIsBigEndian();
69 static bool SystemIsLittleEndian();
71 static bool SystemIsLE() {
return SystemIsLittleEndian(); }
78 static void SwapFromSystemToBigEndian(T *p);
89 static void SwapRangeFromSystemToBigEndian(T *p,
BufferSizeType num);
98 static void SwapWriteRangeFromSystemToBigEndian(T *p,
int num,
107 static void SwapFromSystemToLittleEndian(T *p);
114 static void SwapRangeFromSystemToLittleEndian(T *p,
BufferSizeType num);
123 static void SwapWriteRangeFromSystemToLittleEndian(T *p,
int num,
132 static void Swap2(
void *p);
136 static void Swap2Range(
void *p, BufferSizeType num);
140 static void SwapWrite2Range(
void *p, BufferSizeType num, OStreamType *fp);
143 static void Swap4(
void *p);
147 static void Swap4Range(
void *p, BufferSizeType num);
151 static void SwapWrite4Range(
void *p, BufferSizeType num, OStreamType *fp);
154 static void Swap8(
void *p);
158 static void Swap8Range(
void *p, BufferSizeType num);
162 static void SwapWrite8Range(
void *p, BufferSizeType num, OStreamType *fp);
169 #ifndef ITK_MANUAL_INSTANTIATION
170 #include "itkByteSwapper.hxx"
SmartPointer< const Self > ConstPointer
SizeValueType BufferSizeType
unsigned long SizeValueType
Base class for most ITK classes.
Perform machine dependent byte swapping.
SmartPointer< Self > Pointer