ClanSoft logo
ClanSoft logo
Entire Class Index Main Class Index Cross Index Global Index

Class CL_Endian

Endianess management class.
Contained in: global
Derived from: none
Derived by: none
Group: Core (I/O Data)

#include <ClanLib/core.h>


public function member index:

Operations:

static void swap(void* data, int type_size, int total_times=1);

Attributes:

static bool is_system_big();
static bool is_system_64bit();
 

Description:

The CL_Endian class is used to convert between different endianess. There are also a set of defines to the lazy developer:
#define SWAP_IF_BIG(i)
#define SWAP_IF_LITTLE(i)
#define SWAP_IF_BIG_ALOT(i, times)
#define SWAP_IF_LITTLE_ALOT(i, times)
#define IS_SYSTEM_64BIT()
Each of these defines call CL_Endian::is_system_big() and CL_Endian::swap.


Function Member Descriptions:

CL_Endian::is_system_64bit - Returns true if 64 bit system.
static bool is_system_64bit();
Returns - True if 64 bit, false otherwise.



CL_Endian::is_system_big - Returns true if big endian system.
static bool is_system_big();
Returns - True if big endian system, false otherwise.



CL_Endian::swap - Swaps larger amounts of data between little and big endian.
static void swap(void* data, int type_size, int total_times=1);
data -Data to be swapped.
type_size - Size of datatype to be swapped.
total_times - Number of 'type_size' size data chunks to be swapped.