exif-entry.h | exif-entry.h | |||
---|---|---|---|---|
/* exif-entry.h | /*! \file exif-entry.h | |||
* \brief Handling EXIF entries | ||||
* | * | |||
* Copyright | * Copyright | |||
* | * | |||
* This library is free software; you can redistribute it and/or | * This library is free software; you can redistribute it and/or | |||
* modify it under the terms of the GNU Lesser General Public | * modify it under the terms of the GNU Lesser General Public | |||
* License as published by the Free Software Foundation; either | * License as published by the Free Software Foundation; either | |||
* version 2 of the License, or (at your option) any later version. | * version 2 of the License, or (at your option) any later version. | |||
* | * | |||
* This library is distributed in the hope that it will be useful, | * This library is distributed in the hope that it will be useful, | |||
* but WITHOUT ANY WARRANTY; without even the implied warranty of | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |||
skipping to change at line 35 | skipping to change at line 36 | |||
extern "C" { | extern "C" { | |||
#endif /* __cplusplus */ | #endif /* __cplusplus */ | |||
typedef struct _ExifEntry ExifEntry; | typedef struct _ExifEntry ExifEntry; | |||
typedef struct _ExifEntryPrivate ExifEntryPrivate; | typedef struct _ExifEntryPrivate ExifEntryPrivate; | |||
#include <libexif/exif-content.h> | #include <libexif/exif-content.h> | |||
#include <libexif/exif-format.h> | #include <libexif/exif-format.h> | |||
#include <libexif/exif-mem.h> | #include <libexif/exif-mem.h> | |||
/*! \struct _ExifEntry exif-entry.h exif/exif-entry.h */ | ||||
struct _ExifEntry { | struct _ExifEntry { | |||
ExifTag tag; | ExifTag tag; | |||
ExifFormat format; | ExifFormat format; | |||
unsigned long components; | unsigned long components; | |||
unsigned char *data; | unsigned char *data; | |||
unsigned int size; | unsigned int size; | |||
/* Content containing this entry */ | /* Content containing this entry */ | |||
ExifContent *parent; | ExifContent *parent; | |||
ExifEntryPrivate *priv; | ExifEntryPrivate *priv; | |||
}; | }; | |||
/* Lifecycle */ | /* Lifecycle */ | |||
/*! Reserve memory for and initialize new #ExifEntry* */ | ||||
ExifEntry *exif_entry_new (void); | ExifEntry *exif_entry_new (void); | |||
ExifEntry *exif_entry_new_mem (ExifMem *); | ExifEntry *exif_entry_new_mem (ExifMem *); | |||
/*! Increase reference counter for #ExifEntry* */ | ||||
void exif_entry_ref (ExifEntry *entry); | void exif_entry_ref (ExifEntry *entry); | |||
/*! Decrease reference counter for #ExifEntry* */ | ||||
void exif_entry_unref (ExifEntry *entry); | void exif_entry_unref (ExifEntry *entry); | |||
/*! Actually free the #ExifEntry* | ||||
* | ||||
* \deprecated Should not be called directly. Use exif_entry_ref() and | ||||
* exif_entry_unref() instead. | ||||
*/ | ||||
void exif_entry_free (ExifEntry *entry); | void exif_entry_free (ExifEntry *entry); | |||
void exif_entry_initialize (ExifEntry *entry, ExifTag tag); | void exif_entry_initialize (ExifEntry *entry, ExifTag tag); | |||
void exif_entry_fix (ExifEntry *entry); | void exif_entry_fix (ExifEntry *entry); | |||
/* For your convenience */ | /* For your convenience */ | |||
/*! Return the value of the EXIF entry | ||||
* | ||||
* CAUTION: The character set of the returned string is not defined. | ||||
* It may be UTF-8, latin1, the native encoding of the | ||||
* computer, or the native encoding of the camera. | ||||
*/ | ||||
const char *exif_entry_get_value (ExifEntry *entry, char *val, | const char *exif_entry_get_value (ExifEntry *entry, char *val, | |||
unsigned int maxlen); | unsigned int maxlen); | |||
/*! Dump text representation of #ExifEntry to stdout */ | ||||
void exif_entry_dump (ExifEntry *entry, unsigned int indent); | void exif_entry_dump (ExifEntry *entry, unsigned int indent); | |||
#define exif_entry_get_ifd(e) ((e)?exif_content_get_ifd((e)->parent):EXIF_I FD_COUNT) | #define exif_entry_get_ifd(e) ((e)?exif_content_get_ifd((e)->parent):EXIF_I FD_COUNT) | |||
#ifdef __cplusplus | #ifdef __cplusplus | |||
} | } | |||
#endif /* __cplusplus */ | #endif /* __cplusplus */ | |||
#endif /* __EXIF_ENTRY_H__ */ | #endif /* __EXIF_ENTRY_H__ */ | |||
End of changes. 9 change blocks. | ||||
1 lines changed or deleted | 24 lines changed or added | |||
exif-mem.h | exif-mem.h | |||
---|---|---|---|---|
/*! \file exif-mem.h | /*! \file exif-mem.h | |||
* \brief Define the ExifMem data type and the associated functions. | * \brief Define the ExifMem data type and the associated functions. | |||
* ExifMem defined the memory management functions used my the ExifLoader. | * ExifMem defines the memory management functions used by the ExifLoader. | |||
*/ | */ | |||
/* exif-mem.h | /* exif-mem.h | |||
* | * | |||
* Copyright | * Copyright | |||
* | * | |||
* This library is free software; you can redistribute it and/or | * This library is free software; you can redistribute it and/or | |||
* modify it under the terms of the GNU Lesser General Public | * modify it under the terms of the GNU Lesser General Public | |||
* License as published by the Free Software Foundation; either | * License as published by the Free Software Foundation; either | |||
* version 2 of the License, or (at your option) any later version. | * version 2 of the License, or (at your option) any later version. | |||
* | * | |||
* This library is distributed in the hope that it will be useful, | * This library is distributed in the hope that it will be useful, | |||
End of changes. 2 change blocks. | ||||
1 lines changed or deleted | 2 lines changed or added | |||
exif-tag.h | exif-tag.h | |||
---|---|---|---|---|
skipping to change at line 110 | skipping to change at line 110 | |||
EXIF_TAG_LIGHT_SOURCE = 0x9208, | EXIF_TAG_LIGHT_SOURCE = 0x9208, | |||
EXIF_TAG_FLASH = 0x9209, | EXIF_TAG_FLASH = 0x9209, | |||
EXIF_TAG_FOCAL_LENGTH = 0x920a, | EXIF_TAG_FOCAL_LENGTH = 0x920a, | |||
EXIF_TAG_SUBJECT_AREA = 0x9214, | EXIF_TAG_SUBJECT_AREA = 0x9214, | |||
EXIF_TAG_TIFF_EP_STANDARD_ID = 0x9216, | EXIF_TAG_TIFF_EP_STANDARD_ID = 0x9216, | |||
EXIF_TAG_MAKER_NOTE = 0x927c, | EXIF_TAG_MAKER_NOTE = 0x927c, | |||
EXIF_TAG_USER_COMMENT = 0x9286, | EXIF_TAG_USER_COMMENT = 0x9286, | |||
EXIF_TAG_SUB_SEC_TIME = 0x9290, | EXIF_TAG_SUB_SEC_TIME = 0x9290, | |||
EXIF_TAG_SUB_SEC_TIME_ORIGINAL = 0x9291, | EXIF_TAG_SUB_SEC_TIME_ORIGINAL = 0x9291, | |||
EXIF_TAG_SUB_SEC_TIME_DIGITIZED = 0x9292, | EXIF_TAG_SUB_SEC_TIME_DIGITIZED = 0x9292, | |||
EXIF_TAG_XP_TITLE = 0x9c9b, | ||||
EXIF_TAG_XP_COMMENT = 0x9c9c, | ||||
EXIF_TAG_XP_AUTHOR = 0x9c9d, | ||||
EXIF_TAG_XP_KEYWORDS = 0x9c9e, | ||||
EXIF_TAG_XP_SUBJECT = 0x9c9f, | ||||
EXIF_TAG_FLASH_PIX_VERSION = 0xa000, | EXIF_TAG_FLASH_PIX_VERSION = 0xa000, | |||
EXIF_TAG_COLOR_SPACE = 0xa001, | EXIF_TAG_COLOR_SPACE = 0xa001, | |||
EXIF_TAG_PIXEL_X_DIMENSION = 0xa002, | EXIF_TAG_PIXEL_X_DIMENSION = 0xa002, | |||
EXIF_TAG_PIXEL_Y_DIMENSION = 0xa003, | EXIF_TAG_PIXEL_Y_DIMENSION = 0xa003, | |||
EXIF_TAG_RELATED_SOUND_FILE = 0xa004, | EXIF_TAG_RELATED_SOUND_FILE = 0xa004, | |||
EXIF_TAG_INTEROPERABILITY_IFD_POINTER = 0xa005, | EXIF_TAG_INTEROPERABILITY_IFD_POINTER = 0xa005, | |||
EXIF_TAG_FLASH_ENERGY = 0xa20b, | EXIF_TAG_FLASH_ENERGY = 0xa20b, | |||
EXIF_TAG_SPATIAL_FREQUENCY_RESPONSE = 0xa20c, | EXIF_TAG_SPATIAL_FREQUENCY_RESPONSE = 0xa20c, | |||
EXIF_TAG_FOCAL_PLANE_X_RESOLUTION = 0xa20e, | EXIF_TAG_FOCAL_PLANE_X_RESOLUTION = 0xa20e, | |||
EXIF_TAG_FOCAL_PLANE_Y_RESOLUTION = 0xa20f, | EXIF_TAG_FOCAL_PLANE_Y_RESOLUTION = 0xa20f, | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 5 lines changed or added | |||
exif-utils.h | exif-utils.h | |||
---|---|---|---|---|
skipping to change at line 66 | skipping to change at line 66 | |||
ExifSShort value); | ExifSShort value); | |||
void exif_set_long (unsigned char *b, ExifByteOrder order, | void exif_set_long (unsigned char *b, ExifByteOrder order, | |||
ExifLong value); | ExifLong value); | |||
void exif_set_slong (unsigned char *b, ExifByteOrder order, | void exif_set_slong (unsigned char *b, ExifByteOrder order, | |||
ExifSLong value); | ExifSLong value); | |||
void exif_set_rational (unsigned char *b, ExifByteOrder order, | void exif_set_rational (unsigned char *b, ExifByteOrder order, | |||
ExifRational value); | ExifRational value); | |||
void exif_set_srational (unsigned char *b, ExifByteOrder order, | void exif_set_srational (unsigned char *b, ExifByteOrder order, | |||
ExifSRational value); | ExifSRational value); | |||
void exif_convert_utf16_to_utf8 (char *out, const unsigned short *in, int m | ||||
axlen); | ||||
/* Please do not use this function outside of the library. */ | /* Please do not use this function outside of the library. */ | |||
void exif_array_set_byte_order (ExifFormat, unsigned char *, unsigned int, | void exif_array_set_byte_order (ExifFormat, unsigned char *, unsigned int, | |||
ExifByteOrder o_orig, ExifByteOrder o_new); | ExifByteOrder o_orig, ExifByteOrder o_new); | |||
#undef MIN | #undef MIN | |||
#define MIN(a, b) (((a) < (b)) ? (a) : (b)) | #define MIN(a, b) (((a) < (b)) ? (a) : (b)) | |||
#undef MAX | #undef MAX | |||
#define MAX(a, b) (((a) > (b)) ? (a) : (b)) | #define MAX(a, b) (((a) > (b)) ? (a) : (b)) | |||
End of changes. 1 change blocks. | ||||
0 lines changed or deleted | 3 lines changed or added | |||