|
EXIF library (libexif) Internals 0.6.26
|
#include <config.h>#include "exif-mnote-data-olympus.h"#include <stdlib.h>#include <string.h>#include <stdio.h>#include <libexif/exif-utils.h>#include <libexif/exif-data.h>Go to the source code of this file.
Macros | |
| #define | CHECKOVERFLOW(offset, datasize, structsize) (( (offset) >= (datasize)) || ((structsize) > (datasize)) || ((offset) > (datasize) - (structsize) )) |
Functions | |
| static enum OlympusVersion | exif_mnote_data_olympus_identify_variant (const unsigned char *buf, unsigned int buf_size) |
| static void | exif_mnote_data_olympus_clear (ExifMnoteDataOlympus *n) |
| static void | exif_mnote_data_olympus_free (ExifMnoteData *n) |
| static char * | exif_mnote_data_olympus_get_value (ExifMnoteData *d, unsigned int i, char *val, unsigned int maxlen) |
| static void | exif_mnote_data_olympus_save (ExifMnoteData *ne, unsigned char **buf, unsigned int *buf_size) |
| save the MnoteData from ne to buf | |
| static void | exif_mnote_data_olympus_load (ExifMnoteData *en, const unsigned char *buf, unsigned int buf_size) |
| static unsigned int | exif_mnote_data_olympus_count (ExifMnoteData *n) |
| static unsigned int | exif_mnote_data_olympus_get_id (ExifMnoteData *d, unsigned int n) |
| static const char * | exif_mnote_data_olympus_get_name (ExifMnoteData *d, unsigned int i) |
| static const char * | exif_mnote_data_olympus_get_title (ExifMnoteData *d, unsigned int i) |
| static const char * | exif_mnote_data_olympus_get_description (ExifMnoteData *d, unsigned int i) |
| static void | exif_mnote_data_olympus_set_byte_order (ExifMnoteData *d, ExifByteOrder o) |
| static void | exif_mnote_data_olympus_set_offset (ExifMnoteData *n, unsigned int o) |
| int | exif_mnote_data_olympus_identify (const ExifData *ed, const ExifEntry *e) |
| Detect if MakerNote is recognized as one handled by the Olympus module. | |
| ExifMnoteData * | exif_mnote_data_olympus_new (ExifMem *mem) |
| #define CHECKOVERFLOW | ( | offset, | |
| datasize, | |||
| structsize | |||
| ) | (( (offset) >= (datasize)) || ((structsize) > (datasize)) || ((offset) > (datasize) - (structsize) )) |
Definition at line 40 of file exif-mnote-data-olympus.c.
|
static |
Definition at line 48 of file exif-mnote-data-olympus.c.
References _ExifMnoteDataOlympus::count, _MnoteOlympusEntry::data, _ExifMnoteDataOlympus::entries, exif_mem_free(), and _ExifMnoteData::mem.
Referenced by exif_mnote_data_olympus_free(), and exif_mnote_data_olympus_load().
|
static |
Definition at line 522 of file exif-mnote-data-olympus.c.
Referenced by exif_mnote_data_olympus_new().
|
static |
Definition at line 68 of file exif-mnote-data-olympus.c.
References exif_mnote_data_olympus_clear().
Referenced by exif_mnote_data_olympus_new().
|
static |
Definition at line 558 of file exif-mnote-data-olympus.c.
References _ExifMnoteDataOlympus::count, _ExifMnoteDataOlympus::entries, mnote_olympus_tag_get_description(), and _MnoteOlympusEntry::tag.
Referenced by exif_mnote_data_olympus_new().
|
static |
Definition at line 528 of file exif-mnote-data-olympus.c.
References _ExifMnoteDataOlympus::count, _ExifMnoteDataOlympus::entries, and _MnoteOlympusEntry::tag.
Referenced by exif_mnote_data_olympus_new().
|
static |
Definition at line 538 of file exif-mnote-data-olympus.c.
References _ExifMnoteDataOlympus::count, _ExifMnoteDataOlympus::entries, mnote_olympus_tag_get_name(), and _MnoteOlympusEntry::tag.
Referenced by exif_mnote_data_olympus_new().
|
static |
Definition at line 548 of file exif-mnote-data-olympus.c.
References _ExifMnoteDataOlympus::count, _ExifMnoteDataOlympus::entries, mnote_olympus_tag_get_title(), and _MnoteOlympusEntry::tag.
Referenced by exif_mnote_data_olympus_new().
|
static |
Definition at line 76 of file exif-mnote-data-olympus.c.
References _ExifMnoteDataOlympus::count, _ExifMnoteDataOlympus::entries, and mnote_olympus_entry_get_value().
Referenced by exif_mnote_data_olympus_new().
Detect if MakerNote is recognized as one handled by the Olympus module.
| [in] | ed | image ExifData to identify as as an Olympus type |
| [in] | e | ExifEntry for EXIF_TAG_MAKER_NOTE, from within ed but duplicated here for convenience |
Definition at line 626 of file exif-mnote-data-olympus.c.
References _ExifEntry::data, exif_data_get_entry, exif_entry_get_value(), exif_mnote_data_olympus_identify_variant(), EXIF_TAG_MAKE, nikonV0, _ExifEntry::size, and unrecognized.
Referenced by interpret_maker_note().
|
static |
Definition at line 594 of file exif-mnote-data-olympus.c.
References epsonV1, nikonV0, nikonV1, nikonV2, olympusV1, olympusV2, sanyoV1, and unrecognized.
Referenced by exif_mnote_data_olympus_identify(), and exif_mnote_data_olympus_load().
|
static |
Definition at line 240 of file exif-mnote-data-olympus.c.
References CHECKOVERFLOW, _MnoteOlympusEntry::components, _ExifMnoteDataOlympus::count, _MnoteOlympusEntry::data, _ExifMnoteDataOlympus::entries, epsonV1, EXIF_BYTE_ORDER_INTEL, EXIF_BYTE_ORDER_MOTOROLA, exif_format_get_size(), exif_get_long(), exif_get_short(), exif_log(), EXIF_LOG_CODE_CORRUPT_DATA, EXIF_LOG_CODE_DEBUG, EXIF_LOG_NO_MEMORY, exif_mem_alloc(), exif_mnote_data_olympus_clear(), exif_mnote_data_olympus_identify_variant(), _MnoteOlympusEntry::format, _ExifMnoteData::log, _ExifMnoteData::mem, MNOTE_NIKON1_TAG_BASE, mnote_olympus_tag_get_name(), nikonV0, nikonV1, nikonV2, _ExifMnoteDataOlympus::offset, olympusV1, olympusV2, _ExifMnoteDataOlympus::order, _MnoteOlympusEntry::order, sanyoV1, _MnoteOlympusEntry::size, _MnoteOlympusEntry::tag, and _ExifMnoteDataOlympus::version.
Referenced by exif_mnote_data_olympus_new().
| ExifMnoteData * exif_mnote_data_olympus_new | ( | ExifMem * | mem | ) |
Definition at line 652 of file exif-mnote-data-olympus.c.
References _ExifMnoteDataMethods::count, exif_mem_alloc(), exif_mnote_data_construct(), exif_mnote_data_olympus_count(), exif_mnote_data_olympus_free(), exif_mnote_data_olympus_get_description(), exif_mnote_data_olympus_get_id(), exif_mnote_data_olympus_get_name(), exif_mnote_data_olympus_get_title(), exif_mnote_data_olympus_get_value(), exif_mnote_data_olympus_load(), exif_mnote_data_olympus_save(), exif_mnote_data_olympus_set_byte_order(), exif_mnote_data_olympus_set_offset(), _ExifMnoteDataMethods::free, _ExifMnoteDataMethods::get_description, _ExifMnoteDataMethods::get_id, _ExifMnoteDataMethods::get_name, _ExifMnoteDataMethods::get_title, _ExifMnoteDataMethods::get_value, _ExifMnoteDataMethods::load, _ExifMnoteData::methods, _ExifMnoteDataMethods::save, _ExifMnoteDataMethods::set_byte_order, and _ExifMnoteDataMethods::set_offset.
Referenced by interpret_maker_note().
|
static |
save the MnoteData from ne to buf
| ne | extract the data from this structure |
| *buf | write the mnoteData to this buffer (buffer will be allocated) |
| buf_size | the size of the buffer |
Definition at line 101 of file exif-mnote-data-olympus.c.
References _MnoteOlympusEntry::components, _ExifMnoteDataOlympus::count, _MnoteOlympusEntry::data, _ExifMnoteDataOlympus::entries, epsonV1, EXIF_BYTE_ORDER_INTEL, exif_format_get_size(), EXIF_LOG_NO_MEMORY, exif_mem_alloc(), exif_mem_realloc(), exif_set_long(), exif_set_short(), _MnoteOlympusEntry::format, _ExifMnoteData::log, _ExifMnoteData::mem, MNOTE_NIKON1_TAG_BASE, nikonV0, nikonV1, nikonV2, _ExifMnoteDataOlympus::offset, olympusV1, olympusV2, _ExifMnoteDataOlympus::order, sanyoV1, _MnoteOlympusEntry::tag, and _ExifMnoteDataOlympus::version.
Referenced by exif_mnote_data_olympus_new().
|
static |
Definition at line 568 of file exif-mnote-data-olympus.c.
References _MnoteOlympusEntry::components, _ExifMnoteDataOlympus::count, _MnoteOlympusEntry::data, _ExifMnoteDataOlympus::entries, exif_array_set_byte_order(), exif_format_get_size(), _MnoteOlympusEntry::format, _ExifMnoteDataOlympus::order, _MnoteOlympusEntry::order, and _MnoteOlympusEntry::size.
Referenced by exif_mnote_data_olympus_new().
|
static |
Definition at line 588 of file exif-mnote-data-olympus.c.
Referenced by exif_mnote_data_olympus_new().