man TIFFswab () - byte- and bit-swapping routines


TIFFGetBitRevTable, TIFFReverseBits, TIFFSwabShort, TIFFSwabLong, TIFFSwabArrayOfShort, TIFFSwabArrayOfLong - byte- and bit-swapping routines


#include <tiffio.h> const unsigned char* TIFFGetBitRevTable(int reversed)

void TIFFReverseBits(u_char *data, unsigned long nbytes)

void TIFFSwabShort(uint16 *data)

void TIFFSwabLong(uint32 *data)

void TIFFSwabArrayOfShort(uint16 *data, unsigned long nshorts)

void TIFFSwabArrayOfLong(uint32 *data, unsigned long nlongs)


The following routines are used by the library to swap 16- and 32-bit data and to reverse the order of bits in bytes.

TIFFSwabShort and TIFFSwabLong swap the bytes in a single 16-bit and 32-bit item, respectively. TIFFSwabArrayOfShort and TIFFSwabArrayOfLong swap the bytes in an array of 16-bit and 32-bit items, respectively.

TIFFReverseBits replaces each byte in data with the equivalent bit-reversed value. This operation is performed with a lookup table, which is returned using the TIFFGetBitRevTable function. reversed parameter specifies which table should be returned. Supply 1 if you want bit reversal table. Supply 0 to get the table that do not reverse bit values. It is a lookup table that can be used as an identity function; i.e. TIFFNoBitRevTable[n] == n.