int TABRawBinBlock::WriteInt16(GInt16 n16Value) { #ifdef CPL_MSB n16Value = (GInt16)CPL_SWAP16(n16Value); #endif return WriteBytes(2, (GByte*)&n16Value); }
int TABRawBinBlock::WriteInt16(GInt16 n16Value) { #ifdef CPL_MSB n16Value = static_cast<GInt16>(CPL_SWAP16(n16Value)); #endif return WriteBytes(2, reinterpret_cast<GByte*>(&n16Value)); }
/********************************************************************** * AVCRawBinWrite<datatype>() * * Arc/Info files are binary files with MSB first (Motorola) byte * ordering. The following functions will reorder the byte for the * value properly and write that to the output file. * * If a problem happens, then CPLError() will be called and * CPLGetLastErrNo() can be used to test if a write operation was * successful. **********************************************************************/ void AVCRawBinWriteInt16(AVCRawBinFile *psFile, GInt16 n16Value) { if (psFile->eByteOrder != geSystemByteOrder) { n16Value = (GInt16)CPL_SWAP16(n16Value); } AVCRawBinWriteBytes(psFile, 2, (GByte*)&n16Value); }
GInt16 TABRawBinBlock::ReadInt16() { GInt16 n16Value; ReadBytes(2, (GByte*)(&n16Value)); #ifdef CPL_MSB return (GInt16)CPL_SWAP16(n16Value); #else return n16Value; #endif }
GInt16 TABRawBinBlock::ReadInt16() { GInt16 n16Value = 0; ReadBytes(2, reinterpret_cast<GByte*>(&n16Value)); #ifdef CPL_MSB return static_cast<GInt16>(CPL_SWAP16(n16Value)); #else return n16Value; #endif }
/********************************************************************** * AVCRawBinRead<datatype>() * * Arc/Info files are binary files with MSB first (Motorola) byte * ordering. The following functions will read from the input file * and return a value with the bytes ordered properly for the current * platform. **********************************************************************/ GInt16 AVCRawBinReadInt16(AVCRawBinFile *psFile) { GInt16 n16Value; AVCRawBinReadBytes(psFile, 2, (GByte*)(&n16Value)); if (psFile->eByteOrder != geSystemByteOrder) { return (GInt16)CPL_SWAP16(n16Value); } return n16Value; }