exif-mnote-data-canon.c File Reference

#include <config.h>
#include "exif-mnote-data-canon.h"
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <libexif/exif-byte-order.h>
#include <libexif/exif-utils.h>
#include <libexif/exif-data.h>

Go to the source code of this file.

Defines

#define DEBUG

Functions

static void exif_mnote_data_canon_clear (ExifMnoteDataCanon *n)
static void exif_mnote_data_canon_free (ExifMnoteData *n)
static void exif_mnote_data_canon_get_tags (ExifMnoteDataCanon *dc, unsigned int n, unsigned int *m, unsigned int *s)
static char * exif_mnote_data_canon_get_value (ExifMnoteData *note, unsigned int n, char *val, unsigned int maxlen)
static void exif_mnote_data_canon_set_byte_order (ExifMnoteData *d, ExifByteOrder o)
static void exif_mnote_data_canon_set_offset (ExifMnoteData *n, unsigned int o)
static void exif_mnote_data_canon_save (ExifMnoteData *ne, unsigned char **buf, unsigned int *buf_size)
static void exif_mnote_data_canon_load (ExifMnoteData *ne, const unsigned char *buf, unsigned int buf_size)
static unsigned int exif_mnote_data_canon_count (ExifMnoteData *n)
static unsigned int exif_mnote_data_canon_get_id (ExifMnoteData *d, unsigned int i)
static const char * exif_mnote_data_canon_get_name (ExifMnoteData *note, unsigned int i)
static const char * exif_mnote_data_canon_get_title (ExifMnoteData *note, unsigned int i)
static const char * exif_mnote_data_canon_get_description (ExifMnoteData *note, unsigned int i)
int exif_mnote_data_canon_identify (const ExifData *ed, const ExifEntry *e)
 Detect if MakerNote is recognized as one handled by the Canon module.
ExifMnoteDataexif_mnote_data_canon_new (ExifMem *mem, ExifDataOption o)


Define Documentation

#define DEBUG

Definition at line 33 of file exif-mnote-data-canon.c.


Function Documentation

static void exif_mnote_data_canon_clear ( ExifMnoteDataCanon n  )  [static]

Definition at line 36 of file exif-mnote-data-canon.c.

References _ExifMnoteDataCanon::count, _MnoteCanonEntry::data, _ExifMnoteDataCanon::entries, exif_mem_free(), and _ExifMnoteData::mem.

Referenced by exif_mnote_data_canon_free(), and exif_mnote_data_canon_load().

static unsigned int exif_mnote_data_canon_count ( ExifMnoteData n  )  [static]

Definition at line 291 of file exif-mnote-data-canon.c.

References _ExifMnoteDataCanon::count, _ExifMnoteDataCanon::entries, and mnote_canon_entry_count_values().

Referenced by exif_mnote_data_canon_new().

static void exif_mnote_data_canon_free ( ExifMnoteData n  )  [static]

Definition at line 56 of file exif-mnote-data-canon.c.

References exif_mnote_data_canon_clear().

Referenced by exif_mnote_data_canon_new().

static const char* exif_mnote_data_canon_get_description ( ExifMnoteData note,
unsigned int  i 
) [static]

Definition at line 338 of file exif-mnote-data-canon.c.

References _ExifMnoteDataCanon::count, _ExifMnoteDataCanon::entries, exif_mnote_data_canon_get_tags(), mnote_canon_tag_get_description(), and _MnoteCanonEntry::tag.

Referenced by exif_mnote_data_canon_new().

static unsigned int exif_mnote_data_canon_get_id ( ExifMnoteData d,
unsigned int  i 
) [static]

Definition at line 302 of file exif-mnote-data-canon.c.

References _ExifMnoteDataCanon::count, _ExifMnoteDataCanon::entries, exif_mnote_data_canon_get_tags(), and _MnoteCanonEntry::tag.

Referenced by exif_mnote_data_canon_new().

static const char* exif_mnote_data_canon_get_name ( ExifMnoteData note,
unsigned int  i 
) [static]

Definition at line 314 of file exif-mnote-data-canon.c.

References _ExifMnoteDataCanon::count, _ExifMnoteDataCanon::entries, exif_mnote_data_canon_get_tags(), mnote_canon_tag_get_name_sub(), _ExifMnoteDataCanon::options, and _MnoteCanonEntry::tag.

Referenced by exif_mnote_data_canon_new().

static void exif_mnote_data_canon_get_tags ( ExifMnoteDataCanon dc,
unsigned int  n,
unsigned int *  m,
unsigned int *  s 
) [static]

Definition at line 64 of file exif-mnote-data-canon.c.

References _ExifMnoteDataCanon::count, _ExifMnoteDataCanon::entries, and mnote_canon_entry_count_values().

Referenced by exif_mnote_data_canon_get_description(), exif_mnote_data_canon_get_id(), exif_mnote_data_canon_get_name(), exif_mnote_data_canon_get_title(), and exif_mnote_data_canon_get_value().

static const char* exif_mnote_data_canon_get_title ( ExifMnoteData note,
unsigned int  i 
) [static]

Definition at line 326 of file exif-mnote-data-canon.c.

References _ExifMnoteDataCanon::count, _ExifMnoteDataCanon::entries, exif_mnote_data_canon_get_tags(), mnote_canon_tag_get_title_sub(), _ExifMnoteDataCanon::options, and _MnoteCanonEntry::tag.

Referenced by exif_mnote_data_canon_new().

static char* exif_mnote_data_canon_get_value ( ExifMnoteData note,
unsigned int  n,
char *  val,
unsigned int  maxlen 
) [static]

Definition at line 81 of file exif-mnote-data-canon.c.

References _ExifMnoteDataCanon::count, _ExifMnoteDataCanon::entries, exif_mnote_data_canon_get_tags(), and mnote_canon_entry_get_value().

Referenced by exif_mnote_data_canon_new().

int exif_mnote_data_canon_identify ( const ExifData ed,
const ExifEntry e 
)

Detect if MakerNote is recognized as one handled by the Canon module.

Parameters:
[in] ed image ExifData to identify as as a Canon type
[in] e ExifEntry for EXIF_TAG_MAKER_NOTE, from within ed but duplicated here for convenience
Returns:
0 if not recognized, nonzero if recognized. The specific nonzero value returned may identify a subtype unique within this module.

Definition at line 350 of file exif-mnote-data-canon.c.

Referenced by interpret_maker_note().

static void exif_mnote_data_canon_load ( ExifMnoteData ne,
const unsigned char *  buf,
unsigned int  buf_size 
) [static]

Definition at line 199 of file exif-mnote-data-canon.c.

References _MnoteCanonEntry::components, _ExifMnoteDataCanon::count, _MnoteCanonEntry::data, _ExifMnoteDataCanon::entries, 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_canon_clear(), _MnoteCanonEntry::format, _ExifMnoteData::log, _ExifMnoteData::mem, mnote_canon_tag_get_name(), _ExifMnoteDataCanon::offset, _MnoteCanonEntry::order, _ExifMnoteDataCanon::order, _MnoteCanonEntry::size, and _MnoteCanonEntry::tag.

Referenced by exif_mnote_data_canon_new().

ExifMnoteData* exif_mnote_data_canon_new ( ExifMem mem,
ExifDataOption  o 
)

Definition at line 360 of file exif-mnote-data-canon.c.

Referenced by interpret_maker_note().

static void exif_mnote_data_canon_save ( ExifMnoteData ne,
unsigned char **  buf,
unsigned int *  buf_size 
) [static]

Definition at line 117 of file exif-mnote-data-canon.c.

References _MnoteCanonEntry::components, _ExifMnoteDataCanon::count, _MnoteCanonEntry::data, _ExifMnoteDataCanon::entries, exif_format_get_size(), EXIF_LOG_NO_MEMORY, exif_mem_alloc(), exif_mem_realloc(), exif_set_long(), exif_set_short(), _MnoteCanonEntry::format, _ExifMnoteData::log, _ExifMnoteData::mem, _ExifMnoteDataCanon::offset, _ExifMnoteDataCanon::order, and _MnoteCanonEntry::tag.

Referenced by exif_mnote_data_canon_new().

static void exif_mnote_data_canon_set_byte_order ( ExifMnoteData d,
ExifByteOrder  o 
) [static]

Definition at line 93 of file exif-mnote-data-canon.c.

References _MnoteCanonEntry::components, _ExifMnoteDataCanon::count, _MnoteCanonEntry::data, _ExifMnoteDataCanon::entries, exif_array_set_byte_order(), _MnoteCanonEntry::format, _MnoteCanonEntry::order, and _ExifMnoteDataCanon::order.

Referenced by exif_mnote_data_canon_new().

static void exif_mnote_data_canon_set_offset ( ExifMnoteData n,
unsigned int  o 
) [static]

Definition at line 111 of file exif-mnote-data-canon.c.

Referenced by exif_mnote_data_canon_new().


SourceForge.net Logo Generated by doxygen