implementing isBigTiffType
This commit is contained in:
parent
0289b19571
commit
dc331ee44a
@ -38,9 +38,29 @@ namespace Exiv2
|
||||
return Image::AutoPtr(new BigTiffImage(io));
|
||||
}
|
||||
|
||||
bool isBigTiffType(BasicIo &, bool)
|
||||
bool isBigTiffType(BasicIo& io, bool)
|
||||
{
|
||||
return false;
|
||||
byte header[2];
|
||||
io.read(header, 2);
|
||||
|
||||
ByteOrder byteOrder = invalidByteOrder;
|
||||
if (header[0] == 'I' && header[1] == 'I')
|
||||
byteOrder = littleEndian;
|
||||
else if (header[0] == 'M' && header[1] == 'M')
|
||||
byteOrder = bigEndian;
|
||||
|
||||
bool isBigTiff = false;
|
||||
if (byteOrder != invalidByteOrder)
|
||||
{
|
||||
byte version[2];
|
||||
io.read(version, 2);
|
||||
|
||||
const uint16_t magic = getUShort(version, byteOrder);
|
||||
|
||||
isBigTiff = magic == 0x2A || magic == 0x2B;
|
||||
}
|
||||
|
||||
return isBigTiff;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user