EXIF library (libexif) API 0.6.22
|
Handling EXIF IFDs. More...
#include <libexif/exiftag.h>
#include <libexif/exifent.h>
#include <libexif/exifdata.h>
#include <libexif/exiflog.h>
#include <libexif/exifmem.h>
Go to the source code of this file.
Data Structures | |
struct | _ExifContent |
Macros | |
#define | exif_content_get_value(c, t, v, m) |
Return a textual representation of the EXIF data for a tag. | |
Typedefs | |
typedef struct _ExifContent | ExifContent |
Holds all EXIF tags in a single IFD. | |
typedef struct _ExifContentPrivate | ExifContentPrivate |
typedef void EXIF_CALLBACK(* | ExifContentForeachEntryFunc) (ExifEntry *, void *user_data) |
Functions | |
EXIF_API (ExifContent *) exif_content_new(void) | |
Reserve memory for and initialize a new ExifContent. | |
EXIF_API (void) exif_content_ref(ExifContent *content) | |
Increase reference counter for ExifContent. | |
EXIF_API (ExifEntry *) exif_content_get_entry(ExifContent *content | |
Return the ExifEntry in this IFD corresponding to the given tag. | |
EXIF_API (ExifIfd) exif_content_get_ifd(ExifContent *c) | |
Return the IFD number in which the given ExifContent is found. | |
Variables | |
ExifEntry * | entry |
ExifEntry * | e |
ExifTag | tag |
ExifContentForeachEntryFunc | func |
ExifContentForeachEntryFunc void * | user_data |
exif_uint_t | indent |
ExifLog * | log |
Handling EXIF IFDs.
#define exif_content_get_value | ( | c, | |
t, | |||
v, | |||
m | |||
) |
Return a textual representation of the EXIF data for a tag.
[in] | c | ExifContent* for an IFD |
[in] | t | ExifTag to return |
[out] | v | char* buffer in which to store value |
[in] | m | unsigned int length of the buffer v |
EXIF_API | ( | ExifContent * | ) |
Reserve memory for and initialize a new ExifContent.
Reserve memory for and initialize new ExifContent using the specified memory allocator.
EXIF_API | ( | ExifEntry * | ) |
Return the ExifEntry in this IFD corresponding to the given tag.
Reserve memory for and initialize a new ExifEntry.
This is a pointer into a member of the ExifContent array and must NOT be freed or unrefed by the caller.
[in] | content | EXIF content for an IFD |
[in] | tag | EXIF tag to return |
EXIF_API | ( | ExifIfd | ) |
Return the IFD number in which the given ExifContent is found.
[in] | c | an ExifContent* |
EXIF_API | ( | void | ) |
Increase reference counter for ExifContent.
Set the log message object for this IFD.
Dump contents of the IFD to stdout.
Executes function on each EXIF tag in this IFD in turn.
Fix the IFD to bring it into specification.
Remove an EXIF tag from an IFD.
Add an EXIF tag to an IFD.
Actually free the ExifContent.
Decrease reference counter for ExifContent.
[in] | content | ExifContent |
When the reference count drops to zero, free the content.
[in] | content | ExifContent |
[in] | content | ExifContent |
If this tag already exists in the IFD, this function does nothing.
[out] | c | IFD |
[in] | entry | EXIF entry to add |
If this tag does not exist in the IFD, this function does nothing.
[out] | c | IFD |
[in] | e | EXIF entry to remove |
Call exif_entry_fix on each entry in this IFD to fix existing entries, create any new entries that are mandatory in this IFD but do not yet exist, and remove any entries that are not allowed in this IFD.
[in,out] | c | EXIF content for an IFD |
The tags will not necessarily be visited in numerical order.
[in,out] | content | IFD over which to iterate |
[in] | func | function to call for each entry |
[in] | user_data | data to pass into func on each call |
This is intended for diagnostic purposes only.
[in] | content | IFD data |
[in] | indent | how many levels deep to indent the data |
[in] | content | IFD |
[in] | log | ExifLog* |