1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>CODA C interface</title>
<link href="../css/codadoc.css" rel="stylesheet" type="text/css">
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
</head>
<body>
<div class="wide">
<center>
<a class="qindex" href="index.html">Main Page</a>
<a class="qindex" href="modules.html">Modules</a>
</center>
<hr>
<!-- Generated by Doxygen 1.9.3 -->
</div><!-- top -->
<div><div class="header">
<div class="headertitle"><div class="title">CODA C interface </div></div>
</div><!--header-->
<div class="contents">
<div class="textblock"><h1><a class="anchor" id="intro"></a>
Introduction</h1>
<p >This is the documentation that describes the Application Programmers Interface (API) for the CODA C Library. It contains a full description for each of the functions in the API and a general description for each of the modules mentioned below.</p>
<h1><a class="anchor" id="codadef"></a>
CODA definition path</h1>
<p >Note that in order to access products whose formats are defined using .codadef files, you should let CODA know where these .codadef files are stored. You can do this by using the <a class="el" href="group__coda__general.html#ga4a7e44bcb241c93a6b29e4c7f8cecadb">coda_set_definition_path()</a> or <a class="el" href="group__coda__general.html#ga0daf1c73a52691328861759fe07457fa">coda_set_definition_path_conditional()</a> functions, or you can set the CODA_DEFINITION environment variable. This environment variable should be a ':' separated (';' on Windows) list of absolute paths to directories containing .codadef files or absolute paths to .codadef files themselves (or a mix of those).</p>
<h1><a class="anchor" id="intro_modules"></a>
Modules</h1>
<p >Each module has a separate section that contains its general description together with descriptions for all types, variables, functions, etc. that are part of this module.</p><ul>
<li><a class="el" href="group__coda__general.html">CODA General</a></li>
<li><a class="el" href="group__coda__product.html">CODA Product</a></li>
<li><a class="el" href="group__coda__types.html">CODA Types</a></li>
<li><a class="el" href="group__coda__cursor.html">CODA Cursor</a></li>
<li><a class="el" href="group__coda__expression.html">CODA Expression</a></li>
<li><a class="el" href="group__coda__time.html">CODA Time</a></li>
<li><a class="el" href="group__coda__error.html">CODA Error</a></li>
</ul>
<h1><a class="anchor" id="performance"></a>
Performance considerations</h1>
<p >The following are some things to try that may help to improve the performance of reading data with CODA</p><ul>
<li>Disable boundary checks with <a class="el" href="group__coda__general.html#ga5d7dcdb4e6b3e6fa1bbf1981b14bb371">coda_set_option_perform_boundary_checks()</a>. This can be a huge speed improvement, but only disable this once you have fully tested your program and are sure that all coda cursor navigation and reading function calls return successfully (i.e. return value equals 0).</li>
<li>Disable special types with <a class="el" href="group__coda__general.html#ga128ac196262a6c4b458e09569bd93104">coda_set_option_bypass_special_types()</a> and use the base type of the data. This can particularly increase performance for variable scale factor integers (<a class="el" href="group__coda__types.html#ggab0124a9650f42b5f4eb2eb21535539ebaab170e500c7fb9748fb5de6de1475437">coda_special_vsf_integer</a>). Note that this option can be enabled/disabled at will, so you might disable it when reading one field, but leave it enabled for reading others.</li>
<li>Disable conversions with <a class="el" href="group__coda__general.html#ga5b9aba6faa0583c70bdcd9add6e72cae">coda_set_option_perform_conversions()</a> and use the data in its native format.</li>
<li>For a single CODA cursor, read data as much as possible in sequence and use <a class="el" href="group__coda__cursor.html#ga9cfed551f3ad8406b7148f1019c19dc2">coda_cursor_goto_next_record_field()</a> and <a class="el" href="group__coda__cursor.html#gaf0251269bb9774efc232cf6771ca9692">coda_cursor_goto_next_array_element()</a> when iterating over records and arrays. </li>
</ul>
</div></div><!-- PageDoc -->
</div><!-- contents -->
<div class="footer">
<hr><p>Copyright © 2007-2022 <b>s<span class="soft-red">[</span>&<span class="soft-red">]</span>t</b>, The Netherlands.
</p>
</div>
</div>
</body>
</html>
|