exif-entry.h

Go to the documentation of this file.
00001 
00022 #ifndef __EXIF_ENTRY_H__
00023 #define __EXIF_ENTRY_H__
00024 
00025 #ifdef __cplusplus
00026 extern "C" {
00027 #endif /* __cplusplus */
00028 
00029 typedef struct _ExifEntry        ExifEntry;
00030 typedef struct _ExifEntryPrivate ExifEntryPrivate;
00031 
00032 #include <libexif/exif-content.h>
00033 #include <libexif/exif-format.h>
00034 #include <libexif/exif-mem.h>
00035 
00037 struct _ExifEntry {
00038         ExifTag tag;
00039         ExifFormat format;
00040         unsigned long components;
00041 
00042         unsigned char *data;
00043         unsigned int size;
00044 
00045         /* Content containing this entry */
00046         ExifContent *parent;
00047 
00048         ExifEntryPrivate *priv;
00049 };
00050 
00051 /* Lifecycle */
00052 
00054 ExifEntry  *exif_entry_new     (void);
00055 
00056 ExifEntry  *exif_entry_new_mem (ExifMem *);
00057 
00059 void        exif_entry_ref     (ExifEntry *entry);
00060 
00062 void        exif_entry_unref   (ExifEntry *entry);
00063 
00069 void        exif_entry_free  (ExifEntry *entry);
00070 
00071 void        exif_entry_initialize (ExifEntry *entry, ExifTag tag);
00072 void        exif_entry_fix        (ExifEntry *entry);
00073 
00074 /* For your convenience */
00075 
00082 const char *exif_entry_get_value (ExifEntry *entry, char *val,
00083                                   unsigned int maxlen);
00084 
00086 void        exif_entry_dump      (ExifEntry *entry, unsigned int indent);
00087 
00088 #define exif_entry_get_ifd(e) ((e)?exif_content_get_ifd((e)->parent):EXIF_IFD_COUNT)
00089 
00090 #ifdef __cplusplus
00091 }
00092 #endif /* __cplusplus */
00093 
00094 #endif /* __EXIF_ENTRY_H__ */

Generated on Fri Jun 22 10:54:49 2007 for EXIF library (libexif) API by  doxygen 1.5.2