EXIF library (libexif) Internals  0.6.24
mnote-olympus-entry.c File Reference
#include <config.h>
#include "mnote-olympus-entry.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <libexif/exif-format.h>
#include <libexif/exif-utils.h>
#include <libexif/exif-entry.h>
#include <libexif/i18n.h>
Include dependency graph for mnote-olympus-entry.c:

Go to the source code of this file.

Macros

#define CF(format, target, v, maxlen)
 
#define CF2(format, target1, target2, v, maxlen)
 
#define CC(number, target, v, maxlen)
 
#define CC2(number, t1, t2, v, maxlen)
 
#define R2L(n)   ((n).denominator ? (long)(n).numerator/(n).denominator : 0L)
 
#define R2D(n)   ((n).denominator ? (double)(n).numerator/(n).denominator : 0.0)
 

Functions

char * mnote_olympus_entry_get_value (MnoteOlympusEntry *entry, char *v, unsigned int maxlen)
 

Variables

struct {
   MnoteOlympusTag   tag
 
   ExifFormat   fmt
 
   struct {
      int   index
 
      const char *   string
 
   }   elem [24]
 
items []
 

Macro Definition Documentation

◆ CC

#define CC (   number,
  target,
  v,
  maxlen 
)
Value:
{ \
if (number != target) { \
snprintf (v, maxlen, \
_("Invalid number of components (%i, " \
"expected %i)."), (int) number, (int) target); \
break; \
} \
}
#define _(String)
Definition: i18n.h:48

Definition at line 58 of file mnote-olympus-entry.c.

◆ CC2

#define CC2 (   number,
  t1,
  t2,
  v,
  maxlen 
)
Value:
{ \
if ((number < t1) || (number > t2)) { \
snprintf (v, maxlen, \
_("Invalid number of components (%i, " \
"expected %i or %i)."), (int) number, \
(int) t1, (int) t2); \
break; \
} \
}

Definition at line 68 of file mnote-olympus-entry.c.

◆ CF

#define CF (   format,
  target,
  v,
  maxlen 
)
Value:
{ \
if (format != target) { \
snprintf (v, maxlen, \
_("Invalid format '%s', " \
"expected '%s'."), \
exif_format_get_name (target)); \
break; \
} \
}
const char * exif_format_get_name(ExifFormat format)
Return a textual representation of the given EXIF data type.
Definition: exif-format.c:53
ExifFormat format
Definition: exif-format.c:33

Definition at line 33 of file mnote-olympus-entry.c.

◆ CF2

#define CF2 (   format,
  target1,
  target2,
  v,
  maxlen 
)
Value:
{ \
if ((format != target1) && (format != target2)) { \
snprintf (v, maxlen, \
_("Invalid format '%s', " \
"expected '%s' or '%s'."), \
exif_format_get_name (target1), \
exif_format_get_name (target2)); \
break; \
} \
}

Definition at line 45 of file mnote-olympus-entry.c.

◆ R2D

#define R2D (   n)    ((n).denominator ? (double)(n).numerator/(n).denominator : 0.0)

Definition at line 80 of file mnote-olympus-entry.c.

◆ R2L

#define R2L (   n)    ((n).denominator ? (long)(n).numerator/(n).denominator : 0L)

Definition at line 79 of file mnote-olympus-entry.c.

Function Documentation

◆ mnote_olympus_entry_get_value()

char* mnote_olympus_entry_get_value ( MnoteOlympusEntry entry,
char *  v,
unsigned int  maxlen 
)

Definition at line 273 of file mnote-olympus-entry.c.

References _, CC, CC2, CF, CF2, _MnoteOlympusEntry::components, _MnoteOlympusEntry::data, ExifRational::denominator, ExifSRational::denominator, elem, EXIF_BYTE_ORDER_INTEL, EXIF_FORMAT_ASCII, EXIF_FORMAT_BYTE, EXIF_FORMAT_LONG, EXIF_FORMAT_RATIONAL, EXIF_FORMAT_SHORT, EXIF_FORMAT_SLONG, EXIF_FORMAT_SRATIONAL, EXIF_FORMAT_SSHORT, EXIF_FORMAT_UNDEFINED, exif_get_long(), exif_get_rational(), exif_get_short(), exif_get_slong(), exif_get_srational(), exif_get_sshort(), _MnoteOlympusEntry::format, index, items, MIN, MNOTE_EPSON_TAG_IMAGE_HEIGHT, MNOTE_EPSON_TAG_IMAGE_WIDTH, MNOTE_EPSON_TAG_SOFTWARE, MNOTE_NIKON1_TAG_CCDSENSITIVITY, MNOTE_NIKON1_TAG_COLORMODE, MNOTE_NIKON1_TAG_CONVERTER, MNOTE_NIKON1_TAG_DIGITALZOOM, MNOTE_NIKON1_TAG_FOCUS, MNOTE_NIKON1_TAG_IMAGEADJUSTMENT, MNOTE_NIKON1_TAG_QUALITY, MNOTE_NIKON1_TAG_WHITEBALANCE, MNOTE_NIKON_TAG_ADAPTER, MNOTE_NIKON_TAG_AFFOCUSPOSITION, MNOTE_NIKON_TAG_BRACKETING, MNOTE_NIKON_TAG_COLORMODE, MNOTE_NIKON_TAG_COLORMODE1, MNOTE_NIKON_TAG_DIGITALZOOM, MNOTE_NIKON_TAG_EXPOSUREDIFF, MNOTE_NIKON_TAG_FIRMWARE, MNOTE_NIKON_TAG_FLASHEXPCOMPENSATION, MNOTE_NIKON_TAG_FLASHEXPOSUREBRACKETVAL, MNOTE_NIKON_TAG_FLASHMODE, MNOTE_NIKON_TAG_FLASHSETTING, MNOTE_NIKON_TAG_FLASHUSED, MNOTE_NIKON_TAG_FOCUSMODE, MNOTE_NIKON_TAG_HUE, MNOTE_NIKON_TAG_IMAGEADJUSTMENT, MNOTE_NIKON_TAG_IMAGEBOUNDARY, MNOTE_NIKON_TAG_ISO, MNOTE_NIKON_TAG_ISO2, MNOTE_NIKON_TAG_ISOSELECTION, MNOTE_NIKON_TAG_LENS, MNOTE_NIKON_TAG_LENS_FSTOPS, MNOTE_NIKON_TAG_LENSTYPE, MNOTE_NIKON_TAG_MANUALFOCUSDISTANCE, MNOTE_NIKON_TAG_QUALITY, MNOTE_NIKON_TAG_SATURATION, MNOTE_NIKON_TAG_SATURATION2, MNOTE_NIKON_TAG_SENSORPIXELSIZE, MNOTE_NIKON_TAG_SHARPENING, MNOTE_NIKON_TAG_TOTALPICTURES, MNOTE_NIKON_TAG_WHITEBALANCE, MNOTE_NIKON_TAG_WHITEBALANCEFINE, MNOTE_NIKON_TAG_WHITEBALANCERB, MNOTE_OLYMPUS_TAG_BLACKLEVEL, MNOTE_OLYMPUS_TAG_BLUEBALANCE, MNOTE_OLYMPUS_TAG_BWMODE, MNOTE_OLYMPUS_TAG_CCDSCANMODE, MNOTE_OLYMPUS_TAG_COLORCONTROL, MNOTE_OLYMPUS_TAG_COLORMATRIX, MNOTE_OLYMPUS_TAG_CONTRAST, MNOTE_OLYMPUS_TAG_DIGIZOOM, MNOTE_OLYMPUS_TAG_EXTERNALFLASHBOUNCE, MNOTE_OLYMPUS_TAG_FLASHDEVICE, MNOTE_OLYMPUS_TAG_FLASHMODE, MNOTE_OLYMPUS_TAG_FOCALPLANEDIAGONAL, MNOTE_OLYMPUS_TAG_FOCUSDIST, MNOTE_OLYMPUS_TAG_FOCUSRANGE, MNOTE_OLYMPUS_TAG_ID, MNOTE_OLYMPUS_TAG_INFO, MNOTE_OLYMPUS_TAG_LENSDISTORTION, MNOTE_OLYMPUS_TAG_LENSTEMPERATURE, MNOTE_OLYMPUS_TAG_MACRO, MNOTE_OLYMPUS_TAG_MANFOCUS, MNOTE_OLYMPUS_TAG_MODE, MNOTE_OLYMPUS_TAG_NOISEREDUCTION, MNOTE_OLYMPUS_TAG_ONETOUCHWB, MNOTE_OLYMPUS_TAG_PREVIEWIMAGEVALID, MNOTE_OLYMPUS_TAG_QUALITY, MNOTE_OLYMPUS_TAG_REDBALANCE, MNOTE_OLYMPUS_TAG_SENSORTEMPERATURE, MNOTE_OLYMPUS_TAG_SERIALNUMBER2, MNOTE_OLYMPUS_TAG_SHARPNESS, MNOTE_OLYMPUS_TAG_UNKNOWN_4, MNOTE_OLYMPUS_TAG_VERSION, MNOTE_OLYMPUS_TAG_WBALANCE, MNOTE_SANYO_TAG_CCDSENSITIVITY, MNOTE_SANYO_TAG_COLORADJUSTMENTMODE, MNOTE_SANYO_TAG_DIGITALZOOM, MNOTE_SANYO_TAG_FLICKERREDUCE, MNOTE_SANYO_TAG_FOCUSMODE, MNOTE_SANYO_TAG_LIGHTSOURCESPECIAL, MNOTE_SANYO_TAG_OPTICALZOOM, MNOTE_SANYO_TAG_QUICKSHOT, MNOTE_SANYO_TAG_RECORDSHUTTERRELEASE, MNOTE_SANYO_TAG_RESAVED, MNOTE_SANYO_TAG_SCENESELECT, MNOTE_SANYO_TAG_SELFTIMER, MNOTE_SANYO_TAG_SEQUENCESHOTINTERVAL, MNOTE_SANYO_TAG_SEQUENTIALSHOT, MNOTE_SANYO_TAG_VOICEMEMO, MNOTE_SANYO_TAG_WIDERANGE, ExifRational::numerator, _MnoteOlympusEntry::order, R2D, R2L, _MnoteOlympusEntry::size, tag, and _MnoteOlympusEntry::tag.

Referenced by exif_mnote_data_olympus_get_value().

Here is the call graph for this function:

Variable Documentation

◆ 

struct { ... } elem[24]

◆ fmt

Definition at line 84 of file mnote-olympus-entry.c.

◆ index

int index

Definition at line 86 of file mnote-olympus-entry.c.

Referenced by mnote_olympus_entry_get_value().

◆ 

const { ... } items[]

◆ string

const char* string

Definition at line 87 of file mnote-olympus-entry.c.

◆ tag

Definition at line 83 of file mnote-olympus-entry.c.

Referenced by mnote_olympus_entry_get_value().


libexif Generated by doxygen