OXIESEC PANEL
- Current Dir:
/
/
usr
/
share
/
doc
/
libexif-doc
/
libexif-api.html
Server IP: 139.59.38.164
Upload:
Create Dir:
Name
Size
Modified
Perms
📁
..
-
10/28/2024 06:50:22 AM
rwxr-xr-x
📄
__stdint_8h_source.html
3.1 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
annotated.html
4.72 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
annotated_dup.js
565 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
bc_s.png
676 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
bdwn.png
147 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
bug.html
3.21 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
classes.html
3.8 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
closed.png
132 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
deprecated.html
4.69 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
dir_04d2bd150f7cc849eeec70b9b0fdccb1.html
8.99 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
dir_04d2bd150f7cc849eeec70b9b0fdccb1.js
1.14 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
doc.png
746 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
doxygen.css
27.3 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
doxygen.png
3.69 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
dynsections.js
3.07 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-byte-order_8h.html
7.63 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-byte-order_8h.js
498 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-byte-order_8h_source.html
10.63 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-content_8h.html
32.01 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-content_8h.js
1.68 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-content_8h_source.html
22.9 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-data-type_8h_source.html
8.61 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-data_8h.html
63.09 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-data_8h.js
2.95 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-data_8h_source.html
39.69 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-entry_8h.html
34.55 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-entry_8h.js
1.14 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-entry_8h_source.html
24.79 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-format_8h.html
8.21 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-format_8h.js
1.79 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-format_8h_source.html
11.52 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-ifd_8h_source.html
7.66 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-loader_8h.html
29.17 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-loader_8h.js
1.01 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-loader_8h_source.html
19.25 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-log_8h.html
18.35 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-log_8h.js
1.7 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-log_8h_source.html
19.34 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-mem_8h.html
17.42 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-mem_8h.js
970 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-mem_8h_source.html
15.79 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-mnote-data-priv_8h_source.html
17.7 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-mnote-data_8h.html
23.88 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-mnote-data_8h.js
1.21 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-mnote-data_8h_source.html
17.82 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-system_8h.html
3.74 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-system_8h.js
105 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-system_8h_source.html
7.24 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-tag_8h.html
43.77 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-tag_8h.js
19.74 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-tag_8h_source.html
43.58 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-utils_8h.html
46.83 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-utils_8h.js
2.3 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif-utils_8h_source.html
31.92 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif_8h.html
3.35 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
exif_8h_source.html
2.96 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
files.html
8.32 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
files.js
119 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
folderclosed.png
616 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
folderopen.png
597 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
functions.html
3.78 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
functions_vars.html
3.66 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
globals.html
18.1 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
globals_defs.html
3.1 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
globals_enum.html
3.06 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
globals_eval.html
3.96 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
globals_func.html
13.33 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
globals_type.html
4.5 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
graph_legend.html
5.73 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
graph_legend.png
19.44 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
i18n_8h_source.html
10.24 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
index.html
7.53 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
jquery.js
132.87 KB
09/03/2017 12:14:01 AM
rw-r--r--
📄
menu.js
1.86 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
menudata.js
881 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
nav_f.png
153 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
nav_g.png
95 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
nav_h.png
98 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
navtree.css
2.04 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
navtree.js
13.98 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
navtreedata.js
1.59 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
navtreeindex0.js
19.47 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
navtreeindex1.js
11.55 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
open.png
123 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
pages.html
3.13 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
resize.js
3.52 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
splitbar.png
314 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
structExifRational.html
4.29 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
structExifRational.js
206 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
structExifSRational.html
4.29 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
structExifSRational.js
209 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
struct__ExifContent.html
5.8 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
struct__ExifContent.js
371 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
struct__ExifContent__coll__graph.map
594 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
struct__ExifContent__coll__graph.png
46.59 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
struct__ExifData.html
6.53 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
struct__ExifData.js
349 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
struct__ExifData__coll__graph.map
551 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
struct__ExifData__coll__graph.png
48.18 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
struct__ExifEntry.html
12.83 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
struct__ExifEntry.js
610 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
struct__ExifEntry__coll__graph.map
577 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
struct__ExifEntry__coll__graph.png
41.61 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
struct__ExifMnoteData.html
5.26 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
struct__ExifMnoteData.js
376 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
struct__ExifMnoteDataMethods.html
8.3 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
struct__ExifMnoteDataMethods.js
1.08 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
struct__ExifMnoteData__coll__graph.map
188 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
struct__ExifMnoteData__coll__graph.png
13.97 KB
11/06/2020 03:07:28 PM
rw-r--r--
📄
sync_off.png
853 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
sync_on.png
845 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
tab_a.png
142 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
tab_b.png
169 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
tab_h.png
177 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
tab_s.png
184 bytes
11/06/2020 03:07:28 PM
rw-r--r--
📄
tabs.css
8.49 KB
11/06/2020 03:07:28 PM
rw-r--r--
Editing: index.html
Close
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.13"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>EXIF library (libexif) API: The libexif library</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript" src="navtreedata.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript"> $(document).ready(initResizable); </script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">EXIF library (libexif) API  <span id="projectnumber">0.6.21</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.13 --> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> $(function() { initMenu('',false,false,'search.php','Search'); }); </script> <div id="main-nav"></div> </div><!-- top --> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> <div id="nav-sync" class="sync"></div> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> $(document).ready(function(){initNavTree('index.html','');}); </script> <div id="doc-content"> <div class="header"> <div class="headertitle"> <div class="title">The libexif library </div> </div> </div><!--header--> <div class="contents"> <div class="textblock"><h1><a class="anchor" id="general_notes"></a> General Notes</h1> <p>This documentation is work in progress, as is the code itself.</p> <h1><a class="anchor" id="using_libexif"></a> Using libexif</h1> <p>#include <<a class="el" href="exif-data_8h.html" title="Defines the ExifData type and the associated functions. ">libexif/exif-data.h</a>></p> <p>libexif provides a libexif.pc file for use with pkgconfig on the libexif installation. If you are using libtool to build your package, you can also make use of libexif-uninstalled.pc.</p> <p>An application using libexif would typically first create an <a class="el" href="exif-loader_8h.html#a2b96cbffaf0f92340a960f887026eced" title="Data used by the loader interface. ">ExifLoader</a> to load EXIF data into memory. From there, it would extract that data as an <a class="el" href="exif-data_8h.html#ae62aab6698d7c078e38cd445ddcb8abf" title="Represents the entire EXIF data found in an image. ">ExifData</a> to start manipulating it. Each IFD is represented by its own <a class="el" href="exif-content_8h.html#ac046cba2f9c5cfabf3ad443303090855" title="Holds all EXIF tags in a single IFD. ">ExifContent</a> within that <a class="el" href="exif-data_8h.html#ae62aab6698d7c078e38cd445ddcb8abf" title="Represents the entire EXIF data found in an image. ">ExifData</a>, which contains all the tag data in <a class="el" href="exif-entry_8h.html#a1629f9c1b9c17765f4e5b297f91a6e45" title="Data found in one EXIF tag. ">ExifEntry</a> form. If the MakerNote data is required, an <a class="el" href="exif-mnote-data_8h.html#ad274692c704f570122329ef1ab32ed31" title="Data found in the MakerNote tag. ">ExifMnoteData</a> can be extracted from the <a class="el" href="exif-data_8h.html#ae62aab6698d7c078e38cd445ddcb8abf" title="Represents the entire EXIF data found in an image. ">ExifData</a> and manipulated with the MakerNote functions.</p> <p>libexif is written in C using an object-based style that defines sets of functions that operate on each data structure.</p> <h1><a class="anchor" id="data_structures"></a> Primary Data Structures</h1> <p><a class="el" href="exif-loader_8h.html#a2b96cbffaf0f92340a960f887026eced" title="Data used by the loader interface. ">ExifLoader</a> State maintained by the loader interface while importing EXIF data from an external file or memory</p> <p><a class="el" href="exif-data_8h.html#ae62aab6698d7c078e38cd445ddcb8abf" title="Represents the entire EXIF data found in an image. ">ExifData</a> The entirety of EXIF data found in an image</p> <p><a class="el" href="exif-content_8h.html#ac046cba2f9c5cfabf3ad443303090855" title="Holds all EXIF tags in a single IFD. ">ExifContent</a> All EXIF tags in a single IFD</p> <p><a class="el" href="exif-entry_8h.html#a1629f9c1b9c17765f4e5b297f91a6e45" title="Data found in one EXIF tag. ">ExifEntry</a> Data found in a single EXIF tag</p> <p><a class="el" href="exif-mnote-data_8h.html#ad274692c704f570122329ef1ab32ed31" title="Data found in the MakerNote tag. ">ExifMnoteData</a> All data found in the MakerNote tag</p> <p><a class="el" href="exif-log_8h.html#a6b225115984bb2016282923cb487f16b" title="State maintained by the logging interface. ">ExifLog</a> State maintained by the logging interface</p> <h1><a class="anchor" id="string_conventions"></a> String Conventions</h1> <p>Strings are 8 bit characters ("char*"). When libexif is compiled with NLS, character set and encoding are as set in the current locale, except for strings that come directly from the data in EXIF tags which are generally returned in raw form. Most EXIF strings are defined to be plain 7-bit ASCII so this raw form should be acceptable in any UNIX locale, but some software ignores the specification and writes 8-bit characters. It is up to the application to detect this and deal with it intelligently.</p> <h1><a class="anchor" id="memory_management"></a> Memory Management Patterns</h1> <p>For pointers to data objects, libexif uses reference counting. The pattern is to use the foo_new() function to create a data object, foo_ref() to increase the reference counter, and foo_unref() to decrease the reference counter and possibly free(3)ing the memory.</p> <p>Libexif by default relies on the calloc(3), realloc(3), and free(3) functions, but the libexif user can tell libexif to use their special memory management functions at runtime.</p> <h1><a class="anchor" id="thread_safety"></a> Thread Safety</h1> <p>libexif is thread safe when the underlying C library is also thread safe. Some C libraries may require defining a special macro (like _REENTRANT) to ensure this, or may require linking to a special thread-safe version of the library.</p> <p>The programmer must ensure that each object allocated by libexif is only used in a single thread at once. For example, an ExifData* allocated in one thread can't be used in a second thread if there is any chance that the first thread could use it at the same time. Multiple threads can use libexif without issues if they never share handles. </p> </div></div><!-- contents --> </div><!-- doc-content --> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> <ul> <li class="footer">Generated by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.13 </li> </ul> </div> </body> </html>