TIFFswab.3tiff man page
TIFFGetBitRevTable, TIFFReverseBits, TIFFSwabShort, TIFFSwabLong, TIFFSwabArrayOfShort, TIFFSwabArrayOfLong — byte- and bit-swapping routines
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.
Libtiff library home page: http://www.simplesystems.org/libtiff/