  
    
main.htmlMain Page     
classes.htmlData Structures     
files.htmlFiles     
dirs.htmlDirectories   
  
    
files.htmlFile List     
globals.htmlGlobals   
dir_3c4fde49625df9344590fff295c7c38d.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#6a73d744a065090aa9e890b8547304e9JPEG_MARKER_SOI    0xd8 #define exif-loader_8c.html#3eb6e3444f79d449058145a01872f4b3JPEG_MARKER_APP0    0xe0 #define exif-loader_8c.html#05c1aea46cae41a712e35830a2ca28b8JPEG_MARKER_APP1    0xe1 #define exif-loader_8c.html#55bb81c4a5c1870e0df4231ceee8e451JPEG_MARKER_APP13    0xed #define exif-loader_8c.html#ea37ec560f466851f269cfa7a4b32615JPEG_MARKER_COM    0xfe #define exif-loader_8c.html#3acffbd305ee72dcd4593c0d8af64a4fMIN (a, b)   (((a) < (b)) ? (a) : (b)) Enumerations
enum  exif-loader_8c.html#86031aa5774850a5b6c23d0cadf7e648ExifLoaderState  {   
exif-loader_8c.html#86031aa5774850a5b6c23d0cadf7e648c73fc7c8469fe658589886d66162fd43EL_READ  =  0, 
exif-loader_8c.html#86031aa5774850a5b6c23d0cadf7e6483040a205050fa9013af34dbbfc0126d9EL_READ_SIZE_BYTE_24 , 
exif-loader_8c.html#86031aa5774850a5b6c23d0cadf7e6488d9f30f47f095307af266c32bd36dcf8EL_READ_SIZE_BYTE_16 , 
exif-loader_8c.html#86031aa5774850a5b6c23d0cadf7e648ad5cc5b77c8a2fa345338869eef0dfa2EL_READ_SIZE_BYTE_08 , 
  
exif-loader_8c.html#86031aa5774850a5b6c23d0cadf7e6487bd581d7ff7d2d89fa6694989c912607EL_READ_SIZE_BYTE_00 , 
exif-loader_8c.html#86031aa5774850a5b6c23d0cadf7e64868fe2defaa5870d5828b9b220fefd525EL_SKIP_BYTES , 
exif-loader_8c.html#86031aa5774850a5b6c23d0cadf7e6489cdc94b35bf57078570b81e2ed8b8d2bEL_EXIF_FOUND  }
enum  exif-loader_8c.html#4130c97bd66d7ea86e6493f18f9588f8ExifLoaderDataFormat  { exif-loader_8c.html#4130c97bd66d7ea86e6493f18f9588f89ca0794f4e8a8393a11d4624d29c6f6fEL_DATA_FORMAT_UNKNOWN , 
exif-loader_8c.html#4130c97bd66d7ea86e6493f18f9588f8d1f9f611dc267862bf1b38ed2b0ec783EL_DATA_FORMAT_EXIF , 
exif-loader_8c.html#4130c97bd66d7ea86e6493f18f9588f8dea6d282b07785ce42b3e98c4e1dc127EL_DATA_FORMAT_JPEG , 
exif-loader_8c.html#4130c97bd66d7ea86e6493f18f9588f8a5c6b21e3559dc3153b6298ea4de8005EL_DATA_FORMAT_FUJI_RAW  }
Functions
static void * exif-loader_8c.html#f5432ecf056b1facede9da071bb9d6a2exif_loader_alloc  ( struct__ExifLoader.htmlExifLoader  *l, unsigned int i) void exif-loader_8c.html#e178bf9ee41fb78fdef1b29ec573901cexif_loader_write_file  ( struct__ExifLoader.htmlExifLoader  *l, const char *path) static unsigned int exif-loader_8c.html#c83d06f410cd71f8ea82f3030707ec19exif_loader_copy  ( struct__ExifLoader.htmlExifLoader  *eld, unsigned char *buf, unsigned int len) unsigned char exif-loader_8c.html#c25a1f0626855195944f53788284e32fexif_loader_write  ( struct__ExifLoader.htmlExifLoader  *eld, unsigned char *buf, unsigned int len) struct__ExifLoader.htmlExifLoader  * exif-loader_8c.html#2d4278edbd89b5af3e5a4fe29b5e085cexif_loader_new  (void) struct__ExifLoader.htmlExifLoader  * exif-loader_8c.html#95c8505132b2465c1078b0842285bfc7exif_loader_new_mem  ( struct__ExifMem.htmlExifMem  *mem) void exif-loader_8c.html#c5e7a899a7499b56772b671add54fcdeexif_loader_ref  ( struct__ExifLoader.htmlExifLoader  *loader) static void exif-loader_8c.html#388dfe484e1ad9c424bf3f029ec50248exif_loader_free  ( struct__ExifLoader.htmlExifLoader  *loader) void exif-loader_8c.html#7f4e3dfa0df969ac8c232327840ca105exif_loader_unref  ( struct__ExifLoader.htmlExifLoader  *loader) void exif-loader_8c.html#080d8ebb5006c1306a3a798ff60253a5exif_loader_reset  ( struct__ExifLoader.htmlExifLoader  *loader) struct__ExifData.htmlExifData  * exif-loader_8c.html#be54111cdaf5b0559a20e1e76c31a86cexif_loader_get_data  ( struct__ExifLoader.htmlExifLoader  *loader) void exif-loader_8c.html#0779beeb15d0c56ae7442f4740f1baf7exif_loader_log  ( struct__ExifLoader.htmlExifLoader  *loader, struct__ExifLog.htmlExifLog  *log) Variables
static const unsigned char exif-loader_8c.html#7107bf174abd5f9994053ef9ae84044aExifHeader  [] = {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#4130c97bd66d7ea86e6493f18f9588f8ExifLoaderDataFormat                   
      
    
  
  
    
       
    
    
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#86031aa5774850a5b6c23d0cadf7e648ExifLoaderState                   
      
    
  
  
    
       
    
    
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#4130c97bd66d7ea86e6493f18f9588f89ca0794f4e8a8393a11d4624d29c6f6fEL_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#4130c97bd66d7ea86e6493f18f9588f8d1f9f611dc267862bf1b38ed2b0ec783EL_DATA_FORMAT_EXIF , exif-loader_8c.html#4130c97bd66d7ea86e6493f18f9588f8a5c6b21e3559dc3153b6298ea4de8005EL_DATA_FORMAT_FUJI_RAW , exif-loader_8c.html#4130c97bd66d7ea86e6493f18f9588f8dea6d282b07785ce42b3e98c4e1dc127EL_DATA_FORMAT_JPEG , exif-loader_8c.html#4130c97bd66d7ea86e6493f18f9588f89ca0794f4e8a8393a11d4624d29c6f6fEL_DATA_FORMAT_UNKNOWN , exif-loader_8c.html#86031aa5774850a5b6c23d0cadf7e6489cdc94b35bf57078570b81e2ed8b8d2bEL_EXIF_FOUND , exif-loader_8c.html#86031aa5774850a5b6c23d0cadf7e648c73fc7c8469fe658589886d66162fd43EL_READ , exif-loader_8c.html#86031aa5774850a5b6c23d0cadf7e6487bd581d7ff7d2d89fa6694989c912607EL_READ_SIZE_BYTE_00 , exif-loader_8c.html#86031aa5774850a5b6c23d0cadf7e648ad5cc5b77c8a2fa345338869eef0dfa2EL_READ_SIZE_BYTE_08 , exif-loader_8c.html#86031aa5774850a5b6c23d0cadf7e6488d9f30f47f095307af266c32bd36dcf8EL_READ_SIZE_BYTE_16 , exif-loader_8c.html#86031aa5774850a5b6c23d0cadf7e6483040a205050fa9013af34dbbfc0126d9EL_READ_SIZE_BYTE_24 , exif-loader_8c.html#86031aa5774850a5b6c23d0cadf7e64868fe2defaa5870d5828b9b220fefd525EL_SKIP_BYTES , exif-loader_8c-source.html#l00124exif_loader_copy() , exif-log_8c-source.html#l00131exif_log() , exif-log_8h.html#36f42667fb0481f099dbc0628dae2652e8772b1ad05481f996ae4ab831f22860EXIF_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#36f42667fb0481f099dbc0628dae26523b611d0d574b7838c2d5173367d96ed3EXIF_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#7107bf174abd5f9994053ef9ae84044aExifHeader [] = {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 02:19:19 2006 for EXIF library (libexif) Internals by 
http://www.doxygen.org/index.htmldoxygen  1.4.6 