#include <ExifEntry.hpp>
Collaboration diagram for CExifEntry:
this class represents a data entry in a EXIF file.
|
construct a dummy entry for binary searching with the tag. use only when binary search:
iterator it = std::lower_bound( m_entries.begin( ), m_entries.end( ), CExifEntry( tag, tspace ) ) ; |
|
initialize the entry with all known values |
|
retrieve the value in the entry as a type T. the data will be converted from the actual type stored in the entry to the requested type T, i.e. there is no undefined behaviour even if the requested type and the actual type is different.
|
|
return the raw data read from the file. it will be in the file byte order, not host byte order. |
|
ensure the data is available by reading them from file if needed. do nothing if the data is already ready. |
|
returns a formatted string of the value of the entry. this function will translate the value of tag properly according to the type of the tag.
|
|
return true if the data has already been read from file. the Formatted() function will read it if it returns false. |
|
according to the TIFF spec, if the size of the field is less than 4 bytes, the value will be encoded in the offset field. in this case, this function will return false.
|
|
return the long name of the tag. it is a human readable name that can be shown in user interfaces.
|
|
provides a sort order for CExifEntry objects. used in std::map's or binary searches |
|
size of the data in bytes |
|
returns the tag ID of the entry. the value of the tag is defined by the EXIF spec. |
|
return the short name of tag. it is an abbeviation without spaces in between.
|
|
output a formatted string of the entry to the ostream "os". this function will translate the value of tag properly according to the type of the tag. |
|
cached data. if empty(), data is either not read from file yet or the data is small enough to be packed in m_offset (i.e. IsReference() returns false). it is always in the byte order of the file (i.e. not swapped) |