#include <ifd.hpp>
Collaboration diagram for Exiv2::Entry:

Public Member Functions | |
Creators | |
| Entry (bool alloc=true) | |
| Default constructor. The entry allocates memory for its data if alloc is true (the default), otherwise it remembers just the pointers into a read and writeable data buffer which it doesn't allocate or delete. | |
| ~Entry () | |
| Destructor. | |
| Entry (const Entry &rhs) | |
| Copy constructor. | |
Manipulators | |
| Entry & | operator= (const Entry &rhs) |
| Assignment operator. | |
| void | setTag (uint16 tag) |
| Set the tag. | |
| void | setIfdId (IfdId ifdId) |
| Set the IFD id. | |
| void | setIdx (int idx) |
| Set the index (unique id of an entry within one IFD). | |
| void | setMakerNote (MakerNote *makerNote) |
| Set the pointer to the MakerNote. | |
| void | setOffset (uint32 offset) |
| Set the offset. The offset is relative to the start of the IFD. | |
| void | setValue (uint32 data, ByteOrder byteOrder) |
| Set the value of the entry to a single unsigned long component, i.e., set the type of the entry to unsigned long, number of components to one and the value according to the data provided. | |
| void | setValue (uint16 type, uint32 count, const byte *data, long size) |
| Set type, count, the data buffer and its size. | |
Accessors | |
| uint16 | tag () const |
| Return the tag. | |
| uint16 | type () const |
| Return the type id. | |
| const char * | typeName () const |
| Return the name of the type. | |
| long | typeSize () const |
| Return the size in bytes of one element of this type. | |
| IfdId | ifdId () const |
| Return the IFD id. | |
| int | idx () const |
| Return the index (unique id >0 of an entry within an IFD, 0 if not set). | |
| MakerNote * | makerNote () const |
| Return the pointer to the associated MakerNote. | |
| uint32 | count () const |
| Return the number of components in the value. | |
| long | size () const |
| Return the size of the data buffer in bytes. | |
| uint32 | offset () const |
| Return the offset from the start of the IFD to the data of the entry. | |
| const byte * | data () const |
| Return a pointer to the data area. Do not attempt to write to this pointer. | |
| const byte * | component (uint32 n) const |
| Return a pointer to the n-th component, 0 if there is no n-th component. Do not attempt to write to this pointer. | |
| bool | alloc () const |
| Get the memory allocation mode. | |
|
||||||||||||||||||||
|
Set type, count, the data buffer and its size.
Copies the provided buffer when called in memory allocation mode.
|
|
||||||||||||
|
Set the value of the entry to a single unsigned long component, i.e., set the type of the entry to unsigned long, number of components to one and the value according to the data provided.
The size of the data buffer is set to at least four bytes, but is left unchanged if it can accomodate the pointer. This method can be used to set the value of a tag which contains a pointer (offset) to a location in the Exif data (like e.g., ExifTag, 0x8769 in IFD0, which contains a pointer to the Exif IFD). |
|
|
Return the size of the data buffer in bytes.
|
1.3.8