  
    
main.htmlMain Page     
classes.htmlData Structures     
files.htmlFiles     
dirs.htmlDirectories   
  
    
files.htmlFile List     
globals.htmlGlobals   
dir_20715630405f3b63e7ab7a5c713843d9.htmllibexif exif-loader.c File Reference
#include <config.h>#include < exif-loader_8h-source.htmllibexif/exif-loader.h >#include < i18n_8h-source.htmllibexif/i18n.h >#include <stdlib.h>#include <string.h>#include <stdio.h> exif-loader_8c-source.htmlGo to the source code of this file. Data Structures
struct  struct__ExifLoader.html_ExifLoader Defines
#define exif-loader_8c.html#08365525ee0dff7ff58f8231305c3e89JPEG_MARKER_SOI    0xd8 #define exif-loader_8c.html#7385540b8a640c8d67cf453b14aeddb3JPEG_MARKER_APP0    0xe0 #define exif-loader_8c.html#203cbb3604314163bb57300f8a2aa886JPEG_MARKER_APP1    0xe1 #define exif-loader_8c.html#10ab07534f9e7f4eec09e70883bbe0aaJPEG_MARKER_APP13    0xed #define exif-loader_8c.html#719b108208ebd0be85200daba6c2ac2aJPEG_MARKER_COM    0xfe #define exif-loader_8c.html#9b073a1e97ac8f23636b9d2d443525a5MIN (a, b)   (((a) < (b)) ? (a) : (b)) Enumerations
enum  exif-loader_8c.html#b8928f13e886fc85d6f580906a82fcafExifLoaderState  {   
exif-loader_8c.html#b8928f13e886fc85d6f580906a82fcafb6dfdc745c1d1dfaac2329a3356da91aEL_READ  =  0, 
exif-loader_8c.html#b8928f13e886fc85d6f580906a82fcafeaf6aac6035d833cdc1bcc26e0a7cbe6EL_READ_SIZE_BYTE_24 , 
exif-loader_8c.html#b8928f13e886fc85d6f580906a82fcaf34283faa3192715dd938ec90b323e410EL_READ_SIZE_BYTE_16 , 
exif-loader_8c.html#b8928f13e886fc85d6f580906a82fcafda4deba1789e12fca5362ec998d3a640EL_READ_SIZE_BYTE_08 , 
  
exif-loader_8c.html#b8928f13e886fc85d6f580906a82fcaf584adefdbfb199ff2203cbae469a42a6EL_READ_SIZE_BYTE_00 , 
exif-loader_8c.html#b8928f13e886fc85d6f580906a82fcaf8beb68fb14445a05a6909a2e341cd68bEL_SKIP_BYTES , 
exif-loader_8c.html#b8928f13e886fc85d6f580906a82fcaf0ae4adb5f353212460dd6ae1bb13275dEL_EXIF_FOUND  }
enum  exif-loader_8c.html#80b45ce64cc31ede356f1f174353998eExifLoaderDataFormat  { exif-loader_8c.html#80b45ce64cc31ede356f1f174353998e74adf2397e53e892793d03496bdcff45EL_DATA_FORMAT_UNKNOWN , 
exif-loader_8c.html#80b45ce64cc31ede356f1f174353998ec42e976a8d8105dae8e87f33c85df8c1EL_DATA_FORMAT_EXIF , 
exif-loader_8c.html#80b45ce64cc31ede356f1f174353998e5ca26bff4b4b0128341a711386d050a0EL_DATA_FORMAT_JPEG , 
exif-loader_8c.html#80b45ce64cc31ede356f1f174353998ec5b71d4c2d47135adc051e4d89e5e6ecEL_DATA_FORMAT_FUJI_RAW  }
Functions
static void * exif-loader_8c.html#87cae5ed2b044ee0f38eadab9ed63983exif_loader_alloc  ( struct__ExifLoader.htmlExifLoader  *l, unsigned int i) void exif-loader_8c.html#8e5095d608ceb8ef7e92b9f56f6f52faexif_loader_write_file  ( struct__ExifLoader.htmlExifLoader  *l, const char *path) static unsigned int exif-loader_8c.html#3ce49c0fdecf1d582239abc67c8a0987exif_loader_copy  ( struct__ExifLoader.htmlExifLoader  *eld, unsigned char *buf, unsigned int len) unsigned char exif-loader_8c.html#f3f1cad8e97e98dfbe5bdab0a66c8f6eexif_loader_write  ( struct__ExifLoader.htmlExifLoader  *eld, unsigned char *buf, unsigned int len) struct__ExifLoader.htmlExifLoader  * exif-loader_8c.html#3950d3770c3b0b5960e6f9818cac759eexif_loader_new  (void) struct__ExifLoader.htmlExifLoader  * exif-loader_8c.html#7b02d813f2279eca2671c2fc10926418exif_loader_new_mem  ( struct__ExifMem.htmlExifMem  *mem) void exif-loader_8c.html#4fa33f3eeec65c51ddd00b0b4a52acceexif_loader_ref  ( struct__ExifLoader.htmlExifLoader  *loader) static void exif-loader_8c.html#3156acaa940282fc116e06578a6d9713exif_loader_free  ( struct__ExifLoader.htmlExifLoader  *loader) void exif-loader_8c.html#0a31eab6b3bc0d2a7d935da2c25e114bexif_loader_unref  ( struct__ExifLoader.htmlExifLoader  *loader) void exif-loader_8c.html#51d59ed232fbdcbb22165a895ff12ac9exif_loader_reset  ( struct__ExifLoader.htmlExifLoader  *loader) struct__ExifData.htmlExifData  * exif-loader_8c.html#4f42fd6580d0cc1bda2822c8232d63f1exif_loader_get_data  ( struct__ExifLoader.htmlExifLoader  *loader) void exif-loader_8c.html#ebbacfe1a6ffa7bd20bebcb9d51a9051exif_loader_log  ( struct__ExifLoader.htmlExifLoader  *loader, struct__ExifLog.htmlExifLog  *log) Variables
static const unsigned char exif-loader_8c.html#2a54a3fd3af187fb5613823530f5015dExifHeader  [] = {0x45, 0x78, 0x69, 0x66, 0x00, 0x00} Define Documentation
  
    
      
        
          
#define JPEG_MARKER_APP0   0xe0                  
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l0003333  of file exif-loader_8c-source.htmlexif-loader.c .      
  
    
      
        
          
#define JPEG_MARKER_APP1   0xe1                  
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l0003535  of file exif-loader_8c-source.htmlexif-loader.c .      
  
    
      
        
          
#define JPEG_MARKER_APP13   0xed                  
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l0003737  of file exif-loader_8c-source.htmlexif-loader.c .      
  
    
      
        
          
#define JPEG_MARKER_COM   0xfe                  
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l0003939  of file exif-loader_8c-source.htmlexif-loader.c .      
  
    
      
        
          
#define JPEG_MARKER_SOI   0xd8                  
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l0003131  of file exif-loader_8c-source.htmlexif-loader.c .      
  
    
      
        
          
#define MIN                    
(           
a,                   
          
          
b           
                    
 )           
   (((a) < (b)) ? (a) : (b))         
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l0009595  of file exif-loader_8c-source.htmlexif-loader.c .
Referenced by 
exif-entry_8c-source.html#l00535exif_entry_get_value() , exif-loader_8c-source.html#l00124exif_loader_copy() , exif-loader_8c-source.html#l00144exif_loader_write() , mnote-canon-entry_8c-source.html#l00193mnote_canon_entry_count_values() , mnote-canon-entry_8c-source.html#l00214mnote_canon_entry_get_value() , and mnote-olympus-entry_8c-source.html#l00165mnote_olympus_entry_get_value() .      
Enumeration Type Documentation
  
    
      
        
          
enum exif-loader_8c.html#80b45ce64cc31ede356f1f174353998eExifLoaderDataFormat                   
      
    
  
  
    
       
    
    
Enumerator: EL_DATA_FORMAT_UNKNOWN EL_DATA_FORMAT_EXIF EL_DATA_FORMAT_JPEG EL_DATA_FORMAT_FUJI_RAW Definition at line 
exif-loader_8c-source.html#l0005151  of file exif-loader_8c-source.htmlexif-loader.c .      
  
    
      
        
          
enum exif-loader_8c.html#b8928f13e886fc85d6f580906a82fcafExifLoaderState                   
      
    
  
  
    
       
    
    
Enumerator: EL_READ EL_READ_SIZE_BYTE_24 EL_READ_SIZE_BYTE_16 EL_READ_SIZE_BYTE_08 EL_READ_SIZE_BYTE_00 EL_SKIP_BYTES EL_EXIF_FOUND Definition at line 
exif-loader_8c-source.html#l0004141  of file exif-loader_8c-source.htmlexif-loader.c .      
Function Documentation
  
    
      
        
          
static void* exif_loader_alloc                     
(           
struct__ExifLoader.htmlExifLoader  *           
 l,         
        
          
          
          
unsigned int           
 i         
        
          
          
)           
 [static]         
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l0007979  of file exif-loader_8c-source.htmlexif-loader.c .
References 
exif-log_8h-source.html#l00069EXIF_LOG_NO_MEMORY , exif-mem_8c-source.html#l00075exif_mem_alloc() , exif-loader_8c-source.html#l00072_ExifLoader::log , and exif-loader_8c-source.html#l00073_ExifLoader::mem .
Referenced by 
exif-loader_8c-source.html#l00124exif_loader_copy() .      
  
    
      
        
          
static unsigned int exif_loader_copy                     
(           
struct__ExifLoader.htmlExifLoader  *           
 eld,         
        
          
          
          
unsigned char *           
 buf,         
        
          
          
          
unsigned int           
 len         
        
          
          
)           
 [static]         
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l00124124  of file exif-loader_8c-source.htmlexif-loader.c .
References 
exif-loader_8c-source.html#l00067_ExifLoader::buf , exif-loader_8c-source.html#l00068_ExifLoader::bytes_read , exif-loader_8c-source.html#l00079exif_loader_alloc() , exif-loader_8c-source.html#l00095MIN , and exif-loader_8c-source.html#l00066_ExifLoader::size .
Referenced by 
exif-loader_8c-source.html#l00144exif_loader_write() .      
  
    
      
        
          
static void exif_loader_free                     
(           
struct__ExifLoader.htmlExifLoader  *           
 loader                    
 )           
 [static]         
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l00334334  of file exif-loader_8c-source.htmlexif-loader.c .
References 
exif-loader_8c-source.html#l00357exif_loader_reset() , exif-mem_8c-source.html#l00065exif_mem_free() , exif-mem_8c-source.html#l00057exif_mem_unref() , and exif-loader_8c-source.html#l00073_ExifLoader::mem .
Referenced by 
exif-loader_8c-source.html#l00348exif_loader_unref() .      
  
    
      
        
          
struct__ExifData.htmlExifData * exif_loader_get_data                     
(           
struct__ExifLoader.htmlExifLoader  *           
 loader                    
 )           
        
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l00370370  of file exif-loader_8c-source.htmlexif-loader.c .
References 
exif-loader_8c-source.html#l00067_ExifLoader::buf , exif-loader_8c-source.html#l00068_ExifLoader::bytes_read , exif-data_8c-source.html#l00699exif_data_load_data() , exif-data_8c-source.html#l01074exif_data_log() , exif-data_8c-source.html#l00108exif_data_new_mem() , exif-loader_8c-source.html#l00072_ExifLoader::log , and exif-loader_8c-source.html#l00073_ExifLoader::mem .
Referenced by 
exif-data_8c-source.html#l00916exif_data_new_from_file() .      
  
    
      
        
          
void exif_loader_log                     
(           
struct__ExifLoader.htmlExifLoader  *           
 loader,         
        
          
          
          
struct__ExifLog.htmlExifLog  *           
 log         
        
          
          
)           
        
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l00385385  of file exif-loader_8c-source.htmlexif-loader.c .
References 
exif-log_8c-source.html#l00097exif_log_ref() , exif-log_8c-source.html#l00104exif_log_unref() , and exif-loader_8c-source.html#l00072_ExifLoader::log .      
  
    
      
        
          
struct__ExifLoader.htmlExifLoader * exif_loader_new                     
(           
void           
                    
 )           
        
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l00297297  of file exif-loader_8c-source.htmlexif-loader.c .
References 
exif-loader_8c-source.html#l00308exif_loader_new_mem() , exif-mem_8c-source.html#l00091exif_mem_new_default() , and exif-mem_8c-source.html#l00057exif_mem_unref() .
Referenced by 
exif-data_8c-source.html#l00916exif_data_new_from_file() .      
  
    
      
        
          
struct__ExifLoader.htmlExifLoader * exif_loader_new_mem                     
(           
struct__ExifMem.htmlExifMem  *           
 mem                    
 )           
        
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l00308308  of file exif-loader_8c-source.htmlexif-loader.c .
References 
exif-mem_8c-source.html#l00075exif_mem_alloc() , exif-mem_8c-source.html#l00050exif_mem_ref() , exif-loader_8c-source.html#l00073_ExifLoader::mem , and exif-loader_8c-source.html#l00070_ExifLoader::ref_count .
Referenced by 
exif-loader_8c-source.html#l00297exif_loader_new() .      
  
    
      
        
          
void exif_loader_ref                     
(           
struct__ExifLoader.htmlExifLoader  *           
 loader                    
 )           
        
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l00327327  of file exif-loader_8c-source.htmlexif-loader.c .
References 
exif-loader_8c-source.html#l00070_ExifLoader::ref_count .      
  
    
      
        
          
void exif_loader_reset                     
(           
struct__ExifLoader.htmlExifLoader  *           
 loader                    
 )           
        
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l00357357  of file exif-loader_8c-source.htmlexif-loader.c .
References 
exif-loader_8c-source.html#l00064_ExifLoader::b_len , exif-loader_8c-source.html#l00067_ExifLoader::buf , exif-loader_8c-source.html#l00068_ExifLoader::bytes_read , exif-loader_8c-source.html#l00060_ExifLoader::data_format , exif-loader_8c.html#80b45ce64cc31ede356f1f174353998e74adf2397e53e892793d03496bdcff45EL_DATA_FORMAT_UNKNOWN , exif-mem_8c-source.html#l00065exif_mem_free() , exif-loader_8c-source.html#l00073_ExifLoader::mem , exif-loader_8c-source.html#l00066_ExifLoader::size , and exif-loader_8c-source.html#l00059_ExifLoader::state .
Referenced by 
exif-loader_8c-source.html#l00334exif_loader_free() .      
  
    
      
        
          
void exif_loader_unref                     
(           
struct__ExifLoader.htmlExifLoader  *           
 loader                    
 )           
        
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l00348348  of file exif-loader_8c-source.htmlexif-loader.c .
References 
exif-loader_8c-source.html#l00334exif_loader_free() , and exif-loader_8c-source.html#l00070_ExifLoader::ref_count .
Referenced by 
exif-data_8c-source.html#l00916exif_data_new_from_file() .      
  
    
      
        
          
unsigned char exif_loader_write                     
(           
struct__ExifLoader.htmlExifLoader  *           
 eld,         
        
          
          
          
unsigned char *           
 buf,         
        
          
          
          
unsigned int           
 len         
        
          
          
)           
        
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l00144144  of file exif-loader_8c-source.htmlexif-loader.c .
References 
exif-loader_8c-source.html#l00063_ExifLoader::b , exif-loader_8c-source.html#l00064_ExifLoader::b_len , exif-loader_8c-source.html#l00060_ExifLoader::data_format , exif-loader_8c.html#80b45ce64cc31ede356f1f174353998ec42e976a8d8105dae8e87f33c85df8c1EL_DATA_FORMAT_EXIF , exif-loader_8c.html#80b45ce64cc31ede356f1f174353998ec5b71d4c2d47135adc051e4d89e5e6ecEL_DATA_FORMAT_FUJI_RAW , exif-loader_8c.html#80b45ce64cc31ede356f1f174353998e5ca26bff4b4b0128341a711386d050a0EL_DATA_FORMAT_JPEG , exif-loader_8c.html#80b45ce64cc31ede356f1f174353998e74adf2397e53e892793d03496bdcff45EL_DATA_FORMAT_UNKNOWN , exif-loader_8c.html#b8928f13e886fc85d6f580906a82fcaf0ae4adb5f353212460dd6ae1bb13275dEL_EXIF_FOUND , exif-loader_8c.html#b8928f13e886fc85d6f580906a82fcafb6dfdc745c1d1dfaac2329a3356da91aEL_READ , exif-loader_8c.html#b8928f13e886fc85d6f580906a82fcaf584adefdbfb199ff2203cbae469a42a6EL_READ_SIZE_BYTE_00 , exif-loader_8c.html#b8928f13e886fc85d6f580906a82fcafda4deba1789e12fca5362ec998d3a640EL_READ_SIZE_BYTE_08 , exif-loader_8c.html#b8928f13e886fc85d6f580906a82fcaf34283faa3192715dd938ec90b323e410EL_READ_SIZE_BYTE_16 , exif-loader_8c.html#b8928f13e886fc85d6f580906a82fcafeaf6aac6035d833cdc1bcc26e0a7cbe6EL_READ_SIZE_BYTE_24 , exif-loader_8c.html#b8928f13e886fc85d6f580906a82fcaf8beb68fb14445a05a6909a2e341cd68bEL_SKIP_BYTES , exif-loader_8c-source.html#l00124exif_loader_copy() , exif-log_8c-source.html#l00131exif_log() , exif-log_8h.html#d7dbc9f25878759b54247de66204b7f2e8386f9a77a68764087d7f3d692f383eEXIF_LOG_CODE_DEBUG , exif-data_8c-source.html#l00054ExifHeader , exif-loader_8c-source.html#l00072_ExifLoader::log , exif-loader_8c-source.html#l00095MIN , exif-loader_8c-source.html#l00066_ExifLoader::size , and exif-loader_8c-source.html#l00059_ExifLoader::state .
Referenced by 
exif-loader_8c-source.html#l00098exif_loader_write_file() .      
  
    
      
        
          
void exif_loader_write_file                     
(           
struct__ExifLoader.htmlExifLoader  *           
 l,         
        
          
          
          
const char *           
 path         
        
          
          
)           
        
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l0009898  of file exif-loader_8c-source.htmlexif-loader.c .
References 
i18n_8h-source.html#l00047_ , exif-loader_8c-source.html#l00144exif_loader_write() , exif-log_8c-source.html#l00131exif_log() , exif-log_8h.html#d7dbc9f25878759b54247de66204b7f27b03249290a865a46b4e8c7d82090719EXIF_LOG_CODE_NONE , exif-loader_8c-source.html#l00072_ExifLoader::log , and exif-format_8c-source.html#l00031size .
Referenced by 
exif-data_8c-source.html#l00916exif_data_new_from_file() .      
Variable Documentation
  
    
      
        
          
const unsigned char exif-loader_8c.html#2a54a3fd3af187fb5613823530f5015dExifHeader [] = {0x45, 0x78, 0x69, 0x66, 0x00, 0x00} [static]                  
      
    
  
  
    
       
    
    
Definition at line 
exif-loader_8c-source.html#l0007676  of file exif-loader_8c-source.htmlexif-loader.c .      
Generated on Sun Apr 23 01:22:39 2006 for EXIF library (libexif) Internals by 
http://www.doxygen.org/index.htmldoxygen  1.4.6 