Sophie

Sophie

distrib > Fedora > 14 > x86_64 > media > updates > by-pkgid > 515e79bfec5ff5a8329551762e6f811b > files > 52

nifticlib-docs-2.0.0-2.fc14.x86_64.rpm

<!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"/>
<title>nifti1_io: /builddir/build/BUILD/nifticlib-2.0.0/niftilib/nifti1_io.h Source File</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body onload='searchBox.OnSelectItem(0);'>
<!-- Generated by Doxygen 1.7.4 -->
<script type="text/javascript"><!--
var searchBox = new SearchBox("searchBox", "search",false,'Search');
--></script>
<div id="top">
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td style="padding-left: 0.5em;">
   <div id="projectname">nifti1_io</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li id="searchli">
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
<div class="header">
  <div class="headertitle">
<div class="title">/builddir/build/BUILD/nifticlib-2.0.0/niftilib/nifti1_io.h</div>  </div>
</div>
<div class="contents">
<a href="nifti1__io_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 
<a name="l00006"></a>00006 <span class="preprocessor">#ifndef _NIFTI_IO_HEADER_</span>
<a name="l00007"></a>00007 <span class="preprocessor"></span><span class="preprocessor">#define _NIFTI_IO_HEADER_</span>
<a name="l00008"></a>00008 <span class="preprocessor"></span>
<a name="l00009"></a>00009 <span class="preprocessor">#include &lt;stdio.h&gt;</span>
<a name="l00010"></a>00010 <span class="preprocessor">#include &lt;stdlib.h&gt;</span>
<a name="l00011"></a>00011 <span class="preprocessor">#include &lt;string.h&gt;</span>
<a name="l00012"></a>00012 <span class="preprocessor">#include &lt;math.h&gt;</span>
<a name="l00013"></a>00013 <span class="preprocessor">#include &lt;ctype.h&gt;</span>
<a name="l00014"></a>00014 
<a name="l00015"></a>00015 <span class="preprocessor">#ifndef DONT_INCLUDE_ANALYZE_STRUCT</span>
<a name="l00016"></a>00016 <span class="preprocessor"></span><span class="preprocessor">#define DONT_INCLUDE_ANALYZE_STRUCT  </span><span class="comment">/*** not needed herein ***/</span>
<a name="l00017"></a>00017 <span class="preprocessor">#endif</span>
<a name="l00018"></a>00018 <span class="preprocessor"></span><span class="preprocessor">#include &quot;<a class="code" href="nifti1_8h.html" title="Official definition of the nifti1 header. Written by Bob Cox, SSCC, NIMH.">nifti1.h</a>&quot;</span>                  <span class="comment">/*** NIFTI-1 header specification ***/</span>
<a name="l00019"></a>00019 
<a name="l00020"></a>00020 <span class="preprocessor">#include &lt;znzlib.h&gt;</span>
<a name="l00021"></a>00021 
<a name="l00022"></a>00022 <span class="comment">/*=================*/</span>
<a name="l00023"></a>00023 <span class="preprocessor">#ifdef  __cplusplus</span>
<a name="l00024"></a>00024 <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {
<a name="l00025"></a>00025 <span class="preprocessor">#endif</span>
<a name="l00026"></a>00026 <span class="preprocessor"></span><span class="comment">/*=================*/</span>
<a name="l00027"></a>00027 
<a name="l00028"></a>00028 <span class="comment">/*****===================================================================*****/</span>
<a name="l00029"></a>00029 <span class="comment">/*****         File nifti1_io.h == Declarations for nifti1_io.c          *****/</span>
<a name="l00030"></a>00030 <span class="comment">/*****...................................................................*****/</span>
<a name="l00031"></a>00031 <span class="comment">/*****            This code is released to the public domain.            *****/</span>
<a name="l00032"></a>00032 <span class="comment">/*****...................................................................*****/</span>
<a name="l00033"></a>00033 <span class="comment">/*****  Author: Robert W Cox, SSCC/DIRP/NIMH/NIH/DHHS/USA/EARTH          *****/</span>
<a name="l00034"></a>00034 <span class="comment">/*****  Date:   August 2003                                              *****/</span>
<a name="l00035"></a>00035 <span class="comment">/*****...................................................................*****/</span>
<a name="l00036"></a>00036 <span class="comment">/*****  Neither the National Institutes of Health (NIH), nor any of its  *****/</span>
<a name="l00037"></a>00037 <span class="comment">/*****  employees imply any warranty of usefulness of this software for  *****/</span>
<a name="l00038"></a>00038 <span class="comment">/*****  any purpose, and do not assume any liability for damages,        *****/</span>
<a name="l00039"></a>00039 <span class="comment">/*****  incidental or otherwise, caused by any use of this document.     *****/</span>
<a name="l00040"></a>00040 <span class="comment">/*****===================================================================*****/</span>
<a name="l00041"></a>00041 
<a name="l00042"></a>00042 <span class="comment">/* </span>
<a name="l00043"></a>00043 <span class="comment">   Modified by: Mark Jenkinson (FMRIB Centre, University of Oxford, UK)</span>
<a name="l00044"></a>00044 <span class="comment">   Date: July/August 2004 </span>
<a name="l00045"></a>00045 <span class="comment"></span>
<a name="l00046"></a>00046 <span class="comment">      Mainly adding low-level IO and changing things to allow gzipped files</span>
<a name="l00047"></a>00047 <span class="comment">      to be read and written</span>
<a name="l00048"></a>00048 <span class="comment">      Full backwards compatability should have been maintained</span>
<a name="l00049"></a>00049 <span class="comment"></span>
<a name="l00050"></a>00050 <span class="comment">   Modified by: Rick Reynolds (SSCC/DIRP/NIMH, National Institutes of Health)</span>
<a name="l00051"></a>00051 <span class="comment">   Date: December 2004</span>
<a name="l00052"></a>00052 <span class="comment"></span>
<a name="l00053"></a>00053 <span class="comment">      Modified and added many routines for I/O.</span>
<a name="l00054"></a>00054 <span class="comment">*/</span>
<a name="l00055"></a>00055 
<a name="l00056"></a>00056 <span class="comment">/********************** Some sample data structures **************************/</span>
<a name="l00057"></a>00057 
<a name="l00058"></a><a class="code" href="structmat44.html">00058</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{                   
<a name="l00059"></a><a class="code" href="structmat44.html#a337517366bb0b4a84ebe681468fee374">00059</a>   <span class="keywordtype">float</span> m[4][4] ;
<a name="l00060"></a>00060 } <a class="code" href="structmat44.html">mat44</a> ;
<a name="l00061"></a>00061 
<a name="l00062"></a><a class="code" href="structmat33.html">00062</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{                   
<a name="l00063"></a><a class="code" href="structmat33.html#ae750d57add810e18a0ca109daa3a240d">00063</a>   <span class="keywordtype">float</span> m[3][3] ;
<a name="l00064"></a>00064 } <a class="code" href="structmat33.html">mat33</a> ;
<a name="l00065"></a>00065 
<a name="l00066"></a>00066 <span class="comment">/*...........................................................................*/</span>
<a name="l00067"></a>00067 
<a name="l00072"></a>00072 <span class="keyword">typedef</span> <span class="keyword">enum</span> _analyze75_orient_code {
<a name="l00073"></a>00073   a75_transverse_unflipped = 0,
<a name="l00074"></a>00074   a75_coronal_unflipped = 1,
<a name="l00075"></a>00075   a75_sagittal_unflipped = 2,
<a name="l00076"></a>00076   a75_transverse_flipped = 3,
<a name="l00077"></a>00077   a75_coronal_flipped = 4,
<a name="l00078"></a>00078   a75_sagittal_flipped = 5,
<a name="l00079"></a>00079   a75_orient_unknown = 6
<a name="l00080"></a>00080 } analyze_75_orient_code;
<a name="l00081"></a>00081 
<a name="l00088"></a><a class="code" href="structnifti__image.html">00088</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{                
<a name="l00090"></a><a class="code" href="structnifti__image.html#ad61740a0245f2af05ded39cb0648ae07">00090</a>   <span class="keywordtype">int</span> <a class="code" href="structnifti__image.html#ad61740a0245f2af05ded39cb0648ae07">ndim</a> ;                    
<a name="l00091"></a><a class="code" href="structnifti__image.html#ab99743dd7967cff6845f1a96b2044167">00091</a>   <span class="keywordtype">int</span> <a class="code" href="structnifti__image.html#ab99743dd7967cff6845f1a96b2044167">nx</a> ;                      
<a name="l00092"></a><a class="code" href="structnifti__image.html#a5e971f24a97c592fefa28d084c02769a">00092</a>   <span class="keywordtype">int</span> <a class="code" href="structnifti__image.html#a5e971f24a97c592fefa28d084c02769a">ny</a> ;                      
<a name="l00093"></a><a class="code" href="structnifti__image.html#a8731bb1d867cdd24335e4bc3dd131c44">00093</a>   <span class="keywordtype">int</span> <a class="code" href="structnifti__image.html#a8731bb1d867cdd24335e4bc3dd131c44">nz</a> ;                      
<a name="l00094"></a><a class="code" href="structnifti__image.html#ab3d3fdfda87503e5e8d53f0342906aba">00094</a>   <span class="keywordtype">int</span> <a class="code" href="structnifti__image.html#ab3d3fdfda87503e5e8d53f0342906aba">nt</a> ;                      
<a name="l00095"></a><a class="code" href="structnifti__image.html#ab4a9c0956e858fd877ee81796adc66bc">00095</a>   <span class="keywordtype">int</span> <a class="code" href="structnifti__image.html#ab4a9c0956e858fd877ee81796adc66bc">nu</a> ;                      
<a name="l00096"></a><a class="code" href="structnifti__image.html#a7e04a5e405f9b79dae5652cdcd3832ef">00096</a>   <span class="keywordtype">int</span> <a class="code" href="structnifti__image.html#a7e04a5e405f9b79dae5652cdcd3832ef">nv</a> ;                      
<a name="l00097"></a><a class="code" href="structnifti__image.html#ae0bc5b6b2e350108e468124b682b715c">00097</a>   <span class="keywordtype">int</span> <a class="code" href="structnifti__image.html#ae0bc5b6b2e350108e468124b682b715c">nw</a> ;                      
<a name="l00098"></a><a class="code" href="structnifti__image.html#a5eacab1dfe27d1ae618740934516ef61">00098</a>   <span class="keywordtype">int</span> dim[8] ;                  
<a name="l00099"></a><a class="code" href="structnifti__image.html#a440a3fab2a781b43ed8216e26492597d">00099</a>   <span class="keywordtype">size_t</span> <a class="code" href="structnifti__image.html#a440a3fab2a781b43ed8216e26492597d">nvox</a> ;                    
<a name="l00100"></a><a class="code" href="structnifti__image.html#a79a4382f115cb6c7f8977c36d73e6749">00100</a>   <span class="keywordtype">int</span> <a class="code" href="structnifti__image.html#a79a4382f115cb6c7f8977c36d73e6749">nbyper</a> ;                  
<a name="l00101"></a><a class="code" href="structnifti__image.html#a51bad5202c3b9943b3c86f80ca5d1cd1">00101</a>   <span class="keywordtype">int</span> <a class="code" href="structnifti__image.html#a51bad5202c3b9943b3c86f80ca5d1cd1">datatype</a> ;                
<a name="l00103"></a><a class="code" href="structnifti__image.html#a8d9ddfeecae70399a50dca551d69f774">00103</a>   <span class="keywordtype">float</span> <a class="code" href="structnifti__image.html#a8d9ddfeecae70399a50dca551d69f774">dx</a> ;                    
<a name="l00104"></a><a class="code" href="structnifti__image.html#afb6cd106a28d4599326042c43d85022b">00104</a>   <span class="keywordtype">float</span> <a class="code" href="structnifti__image.html#afb6cd106a28d4599326042c43d85022b">dy</a> ;                    
<a name="l00105"></a><a class="code" href="structnifti__image.html#ac462fb16a688d8dbec164456febdc9c7">00105</a>   <span class="keywordtype">float</span> <a class="code" href="structnifti__image.html#ac462fb16a688d8dbec164456febdc9c7">dz</a> ;                    
<a name="l00106"></a><a class="code" href="structnifti__image.html#ab4e9dd136d1de9fbe03c68f081876b9e">00106</a>   <span class="keywordtype">float</span> <a class="code" href="structnifti__image.html#ab4e9dd136d1de9fbe03c68f081876b9e">dt</a> ;                    
<a name="l00107"></a><a class="code" href="structnifti__image.html#ab1c6399d45bf77d6eff712d318a9d0ca">00107</a>   <span class="keywordtype">float</span> <a class="code" href="structnifti__image.html#ab1c6399d45bf77d6eff712d318a9d0ca">du</a> ;                    
<a name="l00108"></a><a class="code" href="structnifti__image.html#a6155d97e665d879e662bf650c09d0bc1">00108</a>   <span class="keywordtype">float</span> <a class="code" href="structnifti__image.html#a6155d97e665d879e662bf650c09d0bc1">dv</a> ;                    
<a name="l00109"></a><a class="code" href="structnifti__image.html#ab7d8391bc07972e0b051f157dde00a04">00109</a>   <span class="keywordtype">float</span> <a class="code" href="structnifti__image.html#ab7d8391bc07972e0b051f157dde00a04">dw</a> ;                    
<a name="l00110"></a><a class="code" href="structnifti__image.html#a85f39f86ade16e714098a3567116e013">00110</a>   <span class="keywordtype">float</span> pixdim[8] ;             
<a name="l00112"></a><a class="code" href="structnifti__image.html#af4d04ce1f0102c2692d89bbd5476a931">00112</a>   <span class="keywordtype">float</span> <a class="code" href="structnifti__image.html#af4d04ce1f0102c2692d89bbd5476a931">scl_slope</a> ;             
<a name="l00113"></a><a class="code" href="structnifti__image.html#a7a760c43613a8ba94aaf73e571ba195d">00113</a>   <span class="keywordtype">float</span> <a class="code" href="structnifti__image.html#a7a760c43613a8ba94aaf73e571ba195d">scl_inter</a> ;             
<a name="l00115"></a><a class="code" href="structnifti__image.html#a7d7c74c824d3c8b50a27322366d243f9">00115</a>   <span class="keywordtype">float</span> <a class="code" href="structnifti__image.html#a7d7c74c824d3c8b50a27322366d243f9">cal_min</a> ;               
<a name="l00116"></a><a class="code" href="structnifti__image.html#a7422e0ecfa446e37bd83fc4fe082135d">00116</a>   <span class="keywordtype">float</span> <a class="code" href="structnifti__image.html#a7422e0ecfa446e37bd83fc4fe082135d">cal_max</a> ;               
<a name="l00118"></a><a class="code" href="structnifti__image.html#adfcbe7e11b44d8a964d61c3e17554686">00118</a>   <span class="keywordtype">int</span> <a class="code" href="structnifti__image.html#adfcbe7e11b44d8a964d61c3e17554686">qform_code</a> ;              
<a name="l00119"></a><a class="code" href="structnifti__image.html#a964e209d6110bd26df6935ebf4a2a620">00119</a>   <span class="keywordtype">int</span> <a class="code" href="structnifti__image.html#a964e209d6110bd26df6935ebf4a2a620">sform_code</a> ;              
<a name="l00121"></a><a class="code" href="structnifti__image.html#a50953906569b58e6b1aaeb7759767b34">00121</a>   <span class="keywordtype">int</span> <a class="code" href="structnifti__image.html#a50953906569b58e6b1aaeb7759767b34">freq_dim</a>  ;               
<a name="l00122"></a><a class="code" href="structnifti__image.html#a731f0b9d7b95bc17f9f1a0a568d8ca71">00122</a>   <span class="keywordtype">int</span> <a class="code" href="structnifti__image.html#a731f0b9d7b95bc17f9f1a0a568d8ca71">phase_dim</a> ;               
<a name="l00123"></a><a class="code" href="structnifti__image.html#ae37a59a187aa187528020cc3abeba5e3">00123</a>   <span class="keywordtype">int</span> <a class="code" href="structnifti__image.html#ae37a59a187aa187528020cc3abeba5e3">slice_dim</a> ;               
<a name="l00125"></a><a class="code" href="structnifti__image.html#a0188187b073521e823b51cb5250d3fd4">00125</a>   <span class="keywordtype">int</span>   <a class="code" href="structnifti__image.html#a0188187b073521e823b51cb5250d3fd4">slice_code</a>  ;           
<a name="l00126"></a><a class="code" href="structnifti__image.html#ade42791ee9c492d506e6c353a61a8c41">00126</a>   <span class="keywordtype">int</span>   <a class="code" href="structnifti__image.html#ade42791ee9c492d506e6c353a61a8c41">slice_start</a> ;           
<a name="l00127"></a><a class="code" href="structnifti__image.html#ac67dffa9ebbf79fe08b511cdb9e2476f">00127</a>   <span class="keywordtype">int</span>   <a class="code" href="structnifti__image.html#ac67dffa9ebbf79fe08b511cdb9e2476f">slice_end</a>   ;           
<a name="l00128"></a><a class="code" href="structnifti__image.html#a0f2e675a17830fb17c58602e0d6ebd3b">00128</a>   <span class="keywordtype">float</span> <a class="code" href="structnifti__image.html#a0f2e675a17830fb17c58602e0d6ebd3b">slice_duration</a> ;        
<a name="l00132"></a><a class="code" href="structnifti__image.html#a26fc9296e99700da54ca3749622f83bd">00132</a>   <span class="keywordtype">float</span> <a class="code" href="structnifti__image.html#a26fc9296e99700da54ca3749622f83bd">quatern_b</a> , quatern_c , quatern_d ,
<a name="l00133"></a>00133         qoffset_x , qoffset_y , qoffset_z ,
<a name="l00134"></a>00134         qfac      ;
<a name="l00135"></a>00135 
<a name="l00136"></a><a class="code" href="structnifti__image.html#a122993357c6c712559c5e0244347c5f3">00136</a>   <a class="code" href="structmat44.html">mat44</a> <a class="code" href="structnifti__image.html#a122993357c6c712559c5e0244347c5f3">qto_xyz</a> ;               
<a name="l00137"></a><a class="code" href="structnifti__image.html#a750a76b493a4f2fc04c66ce2d4407bce">00137</a>   <a class="code" href="structmat44.html">mat44</a> <a class="code" href="structnifti__image.html#a750a76b493a4f2fc04c66ce2d4407bce">qto_ijk</a> ;               
<a name="l00139"></a><a class="code" href="structnifti__image.html#a69460d9b0b0b19fe740c9b30cfd44e10">00139</a>   <a class="code" href="structmat44.html">mat44</a> <a class="code" href="structnifti__image.html#a69460d9b0b0b19fe740c9b30cfd44e10">sto_xyz</a> ;               
<a name="l00140"></a><a class="code" href="structnifti__image.html#a1cb3cbfb8172a62e676581d3a1e950af">00140</a>   <a class="code" href="structmat44.html">mat44</a> <a class="code" href="structnifti__image.html#a1cb3cbfb8172a62e676581d3a1e950af">sto_ijk</a> ;               
<a name="l00142"></a><a class="code" href="structnifti__image.html#ae17bdf0913f6672abdac81c453ecb598">00142</a>   <span class="keywordtype">float</span> <a class="code" href="structnifti__image.html#ae17bdf0913f6672abdac81c453ecb598">toffset</a> ;               
<a name="l00144"></a><a class="code" href="structnifti__image.html#a5fa377516ee62469a9051a5834f080af">00144</a>   <span class="keywordtype">int</span> <a class="code" href="structnifti__image.html#a5fa377516ee62469a9051a5834f080af">xyz_units</a>  ;              
<a name="l00145"></a><a class="code" href="structnifti__image.html#a43e8d714fac078daffbe590253776d4c">00145</a>   <span class="keywordtype">int</span> <a class="code" href="structnifti__image.html#a43e8d714fac078daffbe590253776d4c">time_units</a> ;              
<a name="l00147"></a><a class="code" href="structnifti__image.html#ac55996e58670948b220bebbf5d4bb0f4">00147</a>   <span class="keywordtype">int</span> nifti_type ;              
<a name="l00150"></a><a class="code" href="structnifti__image.html#a56a5855aaf5323044ffdfde0a23214bc">00150</a>   <span class="keywordtype">int</span>   <a class="code" href="structnifti__image.html#a56a5855aaf5323044ffdfde0a23214bc">intent_code</a> ;           
<a name="l00151"></a><a class="code" href="structnifti__image.html#a1c3ebd9911ac46b659c268a95014b5e8">00151</a>   <span class="keywordtype">float</span> <a class="code" href="structnifti__image.html#a1c3ebd9911ac46b659c268a95014b5e8">intent_p1</a> ;             
<a name="l00152"></a><a class="code" href="structnifti__image.html#aacd903b0043fd9378de6927a64bafa85">00152</a>   <span class="keywordtype">float</span> <a class="code" href="structnifti__image.html#aacd903b0043fd9378de6927a64bafa85">intent_p2</a> ;             
<a name="l00153"></a><a class="code" href="structnifti__image.html#a45dd58da99fbf651a96f68dc83e504c5">00153</a>   <span class="keywordtype">float</span> <a class="code" href="structnifti__image.html#a45dd58da99fbf651a96f68dc83e504c5">intent_p3</a> ;             
<a name="l00154"></a><a class="code" href="structnifti__image.html#ab462f3422c9db863ec134bc90c8107b3">00154</a>   <span class="keywordtype">char</span>  intent_name[16] ;       
<a name="l00156"></a><a class="code" href="structnifti__image.html#a6fb59082d2217b817e05418747943b29">00156</a>   <span class="keywordtype">char</span> descrip[80]  ;           
<a name="l00157"></a><a class="code" href="structnifti__image.html#a6366032a4535620d2b0be3240303f50e">00157</a>   <span class="keywordtype">char</span> aux_file[24] ;           
<a name="l00159"></a><a class="code" href="structnifti__image.html#a439fb70fd16ce03d24ff975e4468c0f8">00159</a>   <span class="keywordtype">char</span> *<a class="code" href="structnifti__image.html#a439fb70fd16ce03d24ff975e4468c0f8">fname</a> ;                 
<a name="l00160"></a><a class="code" href="structnifti__image.html#aaace950977a636b704e1a45496ba4e22">00160</a>   <span class="keywordtype">char</span> *<a class="code" href="structnifti__image.html#aaace950977a636b704e1a45496ba4e22">iname</a> ;                 
<a name="l00161"></a><a class="code" href="structnifti__image.html#a856fc94a5daed16225264dc8daa96013">00161</a>   <span class="keywordtype">int</span>   <a class="code" href="structnifti__image.html#a856fc94a5daed16225264dc8daa96013">iname_offset</a> ;          
<a name="l00162"></a><a class="code" href="structnifti__image.html#ac7e2a08cb9631d0cdf6a29da77cb19ee">00162</a>   <span class="keywordtype">int</span>   <a class="code" href="structnifti__image.html#ac7e2a08cb9631d0cdf6a29da77cb19ee">swapsize</a> ;              
<a name="l00163"></a><a class="code" href="structnifti__image.html#a5ce21d97da49b1dcf9415e83bbf07caf">00163</a>   <span class="keywordtype">int</span>   <a class="code" href="structnifti__image.html#a5ce21d97da49b1dcf9415e83bbf07caf">byteorder</a> ;             
<a name="l00164"></a><a class="code" href="structnifti__image.html#a946b2c63e6fb9f3c1a1fc8f689efeec6">00164</a>   <span class="keywordtype">void</span> *<a class="code" href="structnifti__image.html#a946b2c63e6fb9f3c1a1fc8f689efeec6">data</a> ;                  
<a name="l00166"></a><a class="code" href="structnifti__image.html#a2b9edee8e340d17e4d87b1c682ca091a">00166</a>   <span class="keywordtype">int</span>                <a class="code" href="structnifti__image.html#a2b9edee8e340d17e4d87b1c682ca091a">num_ext</a> ;  
<a name="l00167"></a><a class="code" href="structnifti__image.html#a0710304d0a8a256ac3be123cb5eb7ebc">00167</a>   <a class="code" href="structnifti1__extension.html" title="Data structure defining the fields of a header extension.">nifti1_extension</a> * <a class="code" href="structnifti__image.html#a0710304d0a8a256ac3be123cb5eb7ebc">ext_list</a> ; 
<a name="l00168"></a><a class="code" href="structnifti__image.html#ae164b68a8420c81d86911bb1c45ae413">00168</a>   analyze_75_orient_code <a class="code" href="structnifti__image.html#ae164b68a8420c81d86911bb1c45ae413">analyze75_orient</a>; 
<a name="l00170"></a>00170 } <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> ;
<a name="l00171"></a>00171 
<a name="l00172"></a>00172 
<a name="l00173"></a>00173 
<a name="l00174"></a>00174 <span class="comment">/* struct for return from nifti_image_read_bricks() */</span>
<a name="l00175"></a><a class="code" href="structnifti__brick__list.html">00175</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
<a name="l00176"></a>00176   <span class="keywordtype">int</span>       nbricks;    <span class="comment">/* the number of allocated pointers in &#39;bricks&#39; */</span>
<a name="l00177"></a>00177   <span class="keywordtype">size_t</span>    bsize;      <span class="comment">/* the length of each data block, in bytes      */</span>
<a name="l00178"></a>00178   <span class="keywordtype">void</span>   ** bricks;     <span class="comment">/* array of pointers to data blocks             */</span>
<a name="l00179"></a>00179 } <a class="code" href="structnifti__brick__list.html">nifti_brick_list</a>;
<a name="l00180"></a>00180 
<a name="l00181"></a>00181 
<a name="l00182"></a>00182 <span class="comment">/*****************************************************************************/</span>
<a name="l00183"></a>00183 <span class="comment">/*------------------ NIfTI version of ANALYZE 7.5 structure -----------------*/</span>
<a name="l00184"></a>00184 
<a name="l00185"></a>00185 <span class="comment">/* (based on fsliolib/dbh.h, but updated for version 7.5) */</span>
<a name="l00186"></a>00186 
<a name="l00187"></a><a class="code" href="structnifti__analyze75.html">00187</a> <span class="keyword">typedef</span> <span class="keyword">struct </span>{
<a name="l00188"></a>00188        <span class="comment">/* header info fields - describes the header    overlap with NIfTI */</span>
<a name="l00189"></a>00189        <span class="comment">/*                                              ------------------ */</span>
<a name="l00190"></a>00190        <span class="keywordtype">int</span> sizeof_hdr;                  <span class="comment">/* 0 + 4        same              */</span>
<a name="l00191"></a>00191        <span class="keywordtype">char</span> data_type[10];              <span class="comment">/* 4 + 10       same              */</span>
<a name="l00192"></a>00192        <span class="keywordtype">char</span> db_name[18];                <span class="comment">/* 14 + 18      same              */</span>
<a name="l00193"></a>00193        <span class="keywordtype">int</span> extents;                     <span class="comment">/* 32 + 4       same              */</span>
<a name="l00194"></a>00194        <span class="keywordtype">short</span> <span class="keywordtype">int</span> session_error;         <span class="comment">/* 36 + 2       same              */</span>
<a name="l00195"></a>00195        <span class="keywordtype">char</span> regular;                    <span class="comment">/* 38 + 1       same              */</span>
<a name="l00196"></a>00196        <span class="keywordtype">char</span> hkey_un0;                   <span class="comment">/* 39 + 1                40 bytes */</span>
<a name="l00197"></a>00197 
<a name="l00198"></a>00198        <span class="comment">/* image dimension fields - describes image sizes */</span>
<a name="l00199"></a>00199        <span class="keywordtype">short</span> <span class="keywordtype">int</span> dim[8];                <span class="comment">/* 0 + 16       same              */</span>
<a name="l00200"></a>00200        <span class="keywordtype">short</span> <span class="keywordtype">int</span> unused8;               <span class="comment">/* 16 + 2       intent_p1...      */</span>
<a name="l00201"></a>00201        <span class="keywordtype">short</span> <span class="keywordtype">int</span> unused9;               <span class="comment">/* 18 + 2         ...             */</span>
<a name="l00202"></a>00202        <span class="keywordtype">short</span> <span class="keywordtype">int</span> unused10;              <span class="comment">/* 20 + 2       intent_p2...      */</span>
<a name="l00203"></a>00203        <span class="keywordtype">short</span> <span class="keywordtype">int</span> unused11;              <span class="comment">/* 22 + 2         ...             */</span>
<a name="l00204"></a>00204        <span class="keywordtype">short</span> <span class="keywordtype">int</span> unused12;              <span class="comment">/* 24 + 2       intent_p3...      */</span>
<a name="l00205"></a>00205        <span class="keywordtype">short</span> <span class="keywordtype">int</span> unused13;              <span class="comment">/* 26 + 2         ...             */</span>
<a name="l00206"></a>00206        <span class="keywordtype">short</span> <span class="keywordtype">int</span> unused14;              <span class="comment">/* 28 + 2       intent_code       */</span>
<a name="l00207"></a>00207        <span class="keywordtype">short</span> <span class="keywordtype">int</span> datatype;              <span class="comment">/* 30 + 2       same              */</span>
<a name="l00208"></a>00208        <span class="keywordtype">short</span> <span class="keywordtype">int</span> bitpix;                <span class="comment">/* 32 + 2       same              */</span>
<a name="l00209"></a>00209        <span class="keywordtype">short</span> <span class="keywordtype">int</span> dim_un0;               <span class="comment">/* 34 + 2       slice_start       */</span>
<a name="l00210"></a>00210        <span class="keywordtype">float</span> pixdim[8];                 <span class="comment">/* 36 + 32      same              */</span>
<a name="l00211"></a>00211 
<a name="l00212"></a>00212        <span class="keywordtype">float</span> vox_offset;                <span class="comment">/* 68 + 4       same              */</span>
<a name="l00213"></a>00213        <span class="keywordtype">float</span> funused1;                  <span class="comment">/* 72 + 4       scl_slope         */</span>
<a name="l00214"></a>00214        <span class="keywordtype">float</span> funused2;                  <span class="comment">/* 76 + 4       scl_inter         */</span>
<a name="l00215"></a>00215        <span class="keywordtype">float</span> funused3;                  <span class="comment">/* 80 + 4       slice_end,        */</span>
<a name="l00216"></a>00216                                                      <span class="comment">/* slice_code,       */</span>
<a name="l00217"></a>00217                                                      <span class="comment">/* xyzt_units        */</span>
<a name="l00218"></a>00218        <span class="keywordtype">float</span> cal_max;                   <span class="comment">/* 84 + 4       same              */</span>
<a name="l00219"></a>00219        <span class="keywordtype">float</span> cal_min;                   <span class="comment">/* 88 + 4       same              */</span>
<a name="l00220"></a>00220        <span class="keywordtype">float</span> compressed;                <span class="comment">/* 92 + 4       slice_duration    */</span>
<a name="l00221"></a>00221        <span class="keywordtype">float</span> verified;                  <span class="comment">/* 96 + 4       toffset           */</span>
<a name="l00222"></a>00222        <span class="keywordtype">int</span> glmax,glmin;                 <span class="comment">/* 100 + 8              108 bytes */</span>
<a name="l00223"></a>00223 
<a name="l00224"></a>00224        <span class="comment">/* data history fields - optional */</span>
<a name="l00225"></a>00225        <span class="keywordtype">char</span> descrip[80];                <span class="comment">/* 0 + 80       same              */</span>
<a name="l00226"></a>00226        <span class="keywordtype">char</span> aux_file[24];               <span class="comment">/* 80 + 24      same              */</span>
<a name="l00227"></a>00227        <span class="keywordtype">char</span> orient;                     <span class="comment">/* 104 + 1      NO GOOD OVERLAP   */</span>
<a name="l00228"></a>00228        <span class="keywordtype">char</span> originator[10];             <span class="comment">/* 105 + 10     FROM HERE DOWN... */</span>
<a name="l00229"></a>00229        <span class="keywordtype">char</span> generated[10];              <span class="comment">/* 115 + 10                       */</span>
<a name="l00230"></a>00230        <span class="keywordtype">char</span> scannum[10];                <span class="comment">/* 125 + 10                       */</span>
<a name="l00231"></a>00231        <span class="keywordtype">char</span> patient_id[10];             <span class="comment">/* 135 + 10                       */</span>
<a name="l00232"></a>00232        <span class="keywordtype">char</span> exp_date[10];               <span class="comment">/* 145 + 10                       */</span>
<a name="l00233"></a>00233        <span class="keywordtype">char</span> exp_time[10];               <span class="comment">/* 155 + 10                       */</span>
<a name="l00234"></a>00234        <span class="keywordtype">char</span> hist_un0[3];                <span class="comment">/* 165 + 3                        */</span>
<a name="l00235"></a>00235        <span class="keywordtype">int</span> views;                       <span class="comment">/* 168 + 4                        */</span>
<a name="l00236"></a>00236        <span class="keywordtype">int</span> vols_added;                  <span class="comment">/* 172 + 4                        */</span>
<a name="l00237"></a>00237        <span class="keywordtype">int</span> start_field;                 <span class="comment">/* 176 + 4                        */</span>
<a name="l00238"></a>00238        <span class="keywordtype">int</span> field_skip;                  <span class="comment">/* 180 + 4                        */</span>
<a name="l00239"></a>00239        <span class="keywordtype">int</span> omax, omin;                  <span class="comment">/* 184 + 8                        */</span>
<a name="l00240"></a>00240        <span class="keywordtype">int</span> smax, smin;                  <span class="comment">/* 192 + 8              200 bytes */</span>
<a name="l00241"></a>00241 } <a class="code" href="structnifti__analyze75.html">nifti_analyze75</a>;                                   <span class="comment">/* total:  348 bytes */</span>
<a name="l00242"></a>00242 
<a name="l00243"></a>00243 
<a name="l00244"></a>00244 <span class="comment">/*****************************************************************************/</span>
<a name="l00245"></a>00245 <span class="comment">/*--------------- Prototypes of functions defined in this file --------------*/</span>
<a name="l00246"></a>00246 
<a name="l00247"></a>00247 <span class="keywordtype">char</span> *<a class="code" href="nifti1__io_8c.html#adfa192edb2b6c605c831a781b6d0dd1b">nifti_datatype_string</a>   ( <span class="keywordtype">int</span> dt ) ;
<a name="l00248"></a>00248 <span class="keywordtype">char</span> *<a class="code" href="nifti1__io_8c.html#a90a17b3e9891b6f16d7b454b5442646d">nifti_units_string</a>      ( <span class="keywordtype">int</span> uu ) ;
<a name="l00249"></a>00249 <span class="keywordtype">char</span> *<a class="code" href="nifti1__io_8c.html#a3354f25465b96de45211544ff6570e74">nifti_intent_string</a>     ( <span class="keywordtype">int</span> ii ) ;
<a name="l00250"></a>00250 <span class="keywordtype">char</span> *<a class="code" href="nifti1__io_8c.html#a7472700981faa470501958c621c9ee61">nifti_xform_string</a>      ( <span class="keywordtype">int</span> xx ) ;
<a name="l00251"></a>00251 <span class="keywordtype">char</span> *<a class="code" href="nifti1__io_8c.html#a2e4ce3c3c610064c01eeeac244101159">nifti_slice_string</a>      ( <span class="keywordtype">int</span> ss ) ;
<a name="l00252"></a>00252 <span class="keywordtype">char</span> *<a class="code" href="nifti1__io_8c.html#a50ab65b744fa58802a77988df9eab9eb">nifti_orientation_string</a>( <span class="keywordtype">int</span> ii ) ;
<a name="l00253"></a>00253 
<a name="l00254"></a>00254 <span class="keywordtype">int</span>   <a class="code" href="nifti1__io_8c.html#a2d77002f1a31d0651eaa2462d6273169">nifti_is_inttype</a>( <span class="keywordtype">int</span> dt ) ;
<a name="l00255"></a>00255 
<a name="l00256"></a>00256 <a class="code" href="structmat44.html">mat44</a> <a class="code" href="nifti1__io_8c.html#abf7254db0ad36f998a92ac6f42f9c5c9">nifti_mat44_inverse</a>( <a class="code" href="structmat44.html">mat44</a> R ) ;
<a name="l00257"></a>00257 
<a name="l00258"></a>00258 <a class="code" href="structmat33.html">mat33</a> <a class="code" href="nifti1__io_8c.html#ac4d58f4a9ed98b1b4ea642c95886d346">nifti_mat33_inverse</a>( <a class="code" href="structmat33.html">mat33</a> R ) ;
<a name="l00259"></a>00259 <a class="code" href="structmat33.html">mat33</a> <a class="code" href="nifti1__io_8c.html#a32d3a6d10f5e97ddc243001727c129a1">nifti_mat33_polar</a>  ( <a class="code" href="structmat33.html">mat33</a> A ) ;
<a name="l00260"></a>00260 <span class="keywordtype">float</span> <a class="code" href="nifti1__io_8c.html#a9a52da66c78e82f5d63a388b813466a3">nifti_mat33_rownorm</a>( <a class="code" href="structmat33.html">mat33</a> A ) ;
<a name="l00261"></a>00261 <span class="keywordtype">float</span> <a class="code" href="nifti1__io_8c.html#a4ccc9daef977faa38f1b05647f835e8d">nifti_mat33_colnorm</a>( <a class="code" href="structmat33.html">mat33</a> A ) ;
<a name="l00262"></a>00262 <span class="keywordtype">float</span> <a class="code" href="nifti1__io_8c.html#a9d50d3f27b0f6a7710d10c00d5041b63">nifti_mat33_determ</a> ( <a class="code" href="structmat33.html">mat33</a> R ) ;
<a name="l00263"></a>00263 <a class="code" href="structmat33.html">mat33</a> <a class="code" href="nifti1__io_8c.html#a44785e6bf9b19f120a9158cc1af312f6">nifti_mat33_mul</a>    ( <a class="code" href="structmat33.html">mat33</a> A , <a class="code" href="structmat33.html">mat33</a> B ) ;
<a name="l00264"></a>00264 
<a name="l00265"></a>00265 <span class="keywordtype">void</span>  <a class="code" href="nifti1__io_8c.html#a9c64a35264c605640a30af4eec6d99bc">nifti_swap_2bytes</a> ( <span class="keywordtype">size_t</span> n , <span class="keywordtype">void</span> *ar ) ;
<a name="l00266"></a>00266 <span class="keywordtype">void</span>  <a class="code" href="nifti1__io_8c.html#a53b22afe7c9c2520e831da6044823c39">nifti_swap_4bytes</a> ( <span class="keywordtype">size_t</span> n , <span class="keywordtype">void</span> *ar ) ;
<a name="l00267"></a>00267 <span class="keywordtype">void</span>  <a class="code" href="nifti1__io_8c.html#a61af0e2662990502b18c2e6ecf1b0fee">nifti_swap_8bytes</a> ( <span class="keywordtype">size_t</span> n , <span class="keywordtype">void</span> *ar ) ;
<a name="l00268"></a>00268 <span class="keywordtype">void</span>  <a class="code" href="nifti1__io_8c.html#a5cf6e5dd1d6eb0b43a8df38e6c833fb5">nifti_swap_16bytes</a>( <span class="keywordtype">size_t</span> n , <span class="keywordtype">void</span> *ar ) ;
<a name="l00269"></a>00269 <span class="keywordtype">void</span>  <a class="code" href="nifti1__io_8c.html#aa7d743976d0ffdf6e320a71a8a32d006">nifti_swap_Nbytes</a> ( <span class="keywordtype">size_t</span> n , <span class="keywordtype">int</span> siz , <span class="keywordtype">void</span> *ar ) ;
<a name="l00270"></a>00270 
<a name="l00271"></a>00271 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#a56b62ecbde8ff299d1911abe1f5961f3">nifti_datatype_is_valid</a>   (<span class="keywordtype">int</span> dtype, <span class="keywordtype">int</span> for_nifti);
<a name="l00272"></a>00272 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#ad43861b84225c2e9ad861ddada7a6041">nifti_datatype_from_string</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> * name);
<a name="l00273"></a>00273 <span class="keywordtype">char</span> * <a class="code" href="nifti1__io_8c.html#a9d6ade79714c193d2ab7bfa6301619c4">nifti_datatype_to_string</a>  (<span class="keywordtype">int</span> dtype);
<a name="l00274"></a>00274 
<a name="l00275"></a>00275 <span class="keywordtype">int</span>   <a class="code" href="nifti1__io_8c.html#ad87cfcf2fe9635136a11811b6f345eab">nifti_get_filesize</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> *pathname ) ;
<a name="l00276"></a>00276 <span class="keywordtype">void</span>  <a class="code" href="nifti1__io_8c.html#a50dc91b6264f53456387f95907bc86ee">swap_nifti_header</a> ( <span class="keyword">struct</span> <a class="code" href="structnifti__1__header.html" title="Data structure defining the fields in the nifti1 header. This binary header should be found at the be...">nifti_1_header</a> *h , <span class="keywordtype">int</span> is_nifti ) ;
<a name="l00277"></a>00277 <span class="keywordtype">void</span>  <a class="code" href="nifti1__io_8c.html#a6b59987a39c86d4e247c953570784917">old_swap_nifti_header</a>( <span class="keyword">struct</span> <a class="code" href="structnifti__1__header.html" title="Data structure defining the fields in the nifti1 header. This binary header should be found at the be...">nifti_1_header</a> *h , <span class="keywordtype">int</span> is_nifti );
<a name="l00278"></a>00278 <span class="keywordtype">int</span>   <a class="code" href="nifti1__io_8c.html#a08ff63c999a17b9a7343a5918d73d414">nifti_swap_as_analyze</a>( <a class="code" href="structnifti__analyze75.html">nifti_analyze75</a> *h );
<a name="l00279"></a>00279 
<a name="l00280"></a>00280 
<a name="l00281"></a>00281 <span class="comment">/* main read/write routines */</span>
<a name="l00282"></a>00282 
<a name="l00283"></a>00283 <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> *<a class="code" href="nifti1__io_8c.html#a6a60e69105dc0a2c7767beb376808143">nifti_image_read_bricks</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *hname , <span class="keywordtype">int</span> nbricks,
<a name="l00284"></a>00284                                      <span class="keyword">const</span> <span class="keywordtype">int</span> *blist, <a class="code" href="structnifti__brick__list.html">nifti_brick_list</a> * NBL);
<a name="l00285"></a>00285 <span class="keywordtype">int</span>          <a class="code" href="nifti1__io_8c.html#a7634eeeda561a1a22064b20bca2e877a">nifti_image_load_bricks</a>(<a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> *nim , <span class="keywordtype">int</span> nbricks,
<a name="l00286"></a>00286                                      <span class="keyword">const</span> <span class="keywordtype">int</span> *blist, <a class="code" href="structnifti__brick__list.html">nifti_brick_list</a> * NBL);
<a name="l00287"></a>00287 <span class="keywordtype">void</span>         <a class="code" href="nifti1__io_8c.html#ab1b499958b62d1c0f3bbc929ca2431f2">nifti_free_NBL</a>( <a class="code" href="structnifti__brick__list.html">nifti_brick_list</a> * NBL );
<a name="l00288"></a>00288 
<a name="l00289"></a>00289 <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> *<a class="code" href="nifti1__io_8c.html#a9da495aabf70c7111f574dc3985e6467" title="Read a nifti header and optionally the data, creating a nifti_image.">nifti_image_read</a>    ( <span class="keyword">const</span> <span class="keywordtype">char</span> *hname , <span class="keywordtype">int</span> read_data ) ;
<a name="l00290"></a>00290 <span class="keywordtype">int</span>          <a class="code" href="nifti1__io_8c.html#a2e75db3fcfbe1c2f7343611ab9cfcb8d" title="Load the image blob into a previously initialized nifti_image.">nifti_image_load</a>    ( <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> *nim ) ;
<a name="l00291"></a>00291 <span class="keywordtype">void</span>         <a class="code" href="nifti1__io_8c.html#a963b6ef9c3532b8dc0e7a243c42d1436">nifti_image_unload</a>  ( <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> *nim ) ;
<a name="l00292"></a>00292 <span class="keywordtype">void</span>         <a class="code" href="nifti1__io_8c.html#a2fe83552d8121a492fe07b5f42397c9d">nifti_image_free</a>    ( <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> *nim ) ;
<a name="l00293"></a>00293 
<a name="l00294"></a>00294 <span class="keywordtype">int</span>          <a class="code" href="nifti1__io_8c.html#a0a688115ca53321cf7429db173ce24aa">nifti_read_collapsed_image</a>( <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> * nim, <span class="keyword">const</span> <span class="keywordtype">int</span> dims [8],
<a name="l00295"></a>00295                                          <span class="keywordtype">void</span> ** data );
<a name="l00296"></a>00296 
<a name="l00297"></a>00297 <span class="keywordtype">int</span>          <a class="code" href="nifti1__io_8c.html#a29be9ec9401b961191b3641055867387">nifti_read_subregion_image</a>( <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> * nim, 
<a name="l00298"></a>00298                                          <span class="keywordtype">int</span> *start_index, <span class="keywordtype">int</span> *region_size,
<a name="l00299"></a>00299                                          <span class="keywordtype">void</span> ** data );
<a name="l00300"></a>00300 
<a name="l00301"></a>00301 <span class="keywordtype">void</span>         <a class="code" href="nifti1__io_8c.html#aae590e6d7a9f46f6f8f454c00b6698bf">nifti_image_write</a>   ( <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> * nim ) ;
<a name="l00302"></a>00302 <span class="keywordtype">void</span>         <a class="code" href="nifti1__io_8c.html#a8864ea68cc4a23ce82f3bb4b545243ca">nifti_image_write_bricks</a>(<a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> * nim, 
<a name="l00303"></a>00303                                       <span class="keyword">const</span> <a class="code" href="structnifti__brick__list.html">nifti_brick_list</a> * NBL);
<a name="l00304"></a>00304 <span class="keywordtype">void</span>         <a class="code" href="nifti1__io_8c.html#aa8098d5521db8f070543122d7ef2ee7e">nifti_image_infodump</a>( <span class="keyword">const</span> <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> * nim ) ;
<a name="l00305"></a>00305 
<a name="l00306"></a>00306 <span class="keywordtype">void</span>         <a class="code" href="nifti1__io_8c.html#ab8596d26f949ed9371fb73abd1f1ccee">nifti_disp_lib_hist</a>( <span class="keywordtype">void</span> ) ;     <span class="comment">/* to display library history */</span>
<a name="l00307"></a>00307 <span class="keywordtype">void</span>         <a class="code" href="nifti1__io_8c.html#aa4648105a0f3099213eaf094b10cc8b0">nifti_disp_lib_version</a>( <span class="keywordtype">void</span> ) ;  <span class="comment">/* to display library version */</span>
<a name="l00308"></a>00308 <span class="keywordtype">int</span>          <a class="code" href="nifti1__io_8c.html#a3152dd3d1140f401aea7754bf37fd3c2">nifti_disp_matrix_orient</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> * mesg, <a class="code" href="structmat44.html">mat44</a> mat );
<a name="l00309"></a>00309 <span class="keywordtype">int</span>          <a class="code" href="nifti1__io_8c.html#aaa80306264031fb13a769618e5fdb278">nifti_disp_type_list</a>( <span class="keywordtype">int</span> which );
<a name="l00310"></a>00310 
<a name="l00311"></a>00311 
<a name="l00312"></a>00312 <span class="keywordtype">char</span> *       <a class="code" href="nifti1__io_8c.html#a1edffc55474a393f60573a1fc6ef5544">nifti_image_to_ascii</a>  ( <span class="keyword">const</span> <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> * nim ) ;
<a name="l00313"></a>00313 <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> *<a class="code" href="nifti1__io_8c.html#a645c453f65af3a1ff1be3081ed34b49e">nifti_image_from_ascii</a>( <span class="keyword">const</span> <span class="keywordtype">char</span> * str, <span class="keywordtype">int</span> * bytes_read ) ;
<a name="l00314"></a>00314 
<a name="l00315"></a>00315 <span class="keywordtype">size_t</span>       <a class="code" href="nifti1__io_8c.html#a0816cfcf9fa0b51a66dd1fa434510e8d">nifti_get_volsize</a>(<span class="keyword">const</span> <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> *nim) ;
<a name="l00316"></a>00316 
<a name="l00317"></a>00317 <span class="comment">/* basic file operations */</span>
<a name="l00318"></a>00318 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#a296fad01763163289b0e1030d3a0ebaa">nifti_set_filenames</a>(<a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> * nim, <span class="keyword">const</span> <span class="keywordtype">char</span> * prefix, <span class="keywordtype">int</span> check,
<a name="l00319"></a>00319                            <span class="keywordtype">int</span> set_byte_order);
<a name="l00320"></a>00320 <span class="keywordtype">char</span> * <a class="code" href="nifti1__io_8c.html#a03d86f65680b215db89c24723ad73a8c">nifti_makehdrname</a>  (<span class="keyword">const</span> <span class="keywordtype">char</span> * prefix, <span class="keywordtype">int</span> nifti_type, <span class="keywordtype">int</span> check,
<a name="l00321"></a>00321                            <span class="keywordtype">int</span> comp);
<a name="l00322"></a>00322 <span class="keywordtype">char</span> * <a class="code" href="nifti1__io_8c.html#a80ba47331f082db092ef29d11c64fa31">nifti_makeimgname</a>  (<span class="keyword">const</span> <span class="keywordtype">char</span> * prefix, <span class="keywordtype">int</span> nifti_type, <span class="keywordtype">int</span> check,
<a name="l00323"></a>00323                            <span class="keywordtype">int</span> comp);
<a name="l00324"></a>00324 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#a247e5a0c2b32a30837187b56d1de553a">is_nifti_file</a>      (<span class="keyword">const</span> <span class="keywordtype">char</span> *hname);
<a name="l00325"></a>00325 <span class="keywordtype">char</span> * <a class="code" href="nifti1__io_8c.html#a338a5f9b74c37ee28ca8683324434a05">nifti_find_file_extension</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> * name);
<a name="l00326"></a>00326 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#ad1eede55fd34a457e1738aa9d0f75036">nifti_is_complete_filename</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* fname);
<a name="l00327"></a>00327 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#a836b54d494e9d2718e5541978ae3fc29">nifti_validfilename</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* fname);
<a name="l00328"></a>00328 
<a name="l00329"></a>00329 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#af9d6192cbeeb85cde0a3c41acf9c2208">disp_nifti_1_header</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> * info, <span class="keyword">const</span> <a class="code" href="structnifti__1__header.html" title="Data structure defining the fields in the nifti1 header. This binary header should be found at the be...">nifti_1_header</a> * hp ) ;
<a name="l00330"></a>00330 <span class="keywordtype">void</span>   <a class="code" href="nifti1__io_8c.html#ad76d66da1e384dc54a092e033bd8e195">nifti_set_debug_level</a>( <span class="keywordtype">int</span> level ) ;
<a name="l00331"></a>00331 <span class="keywordtype">void</span>   <a class="code" href="nifti1__io_8c.html#a10072c5930f7f0c69c91821edbf44b97">nifti_set_skip_blank_ext</a>( <span class="keywordtype">int</span> skip ) ;
<a name="l00332"></a>00332 <span class="keywordtype">void</span>   <a class="code" href="nifti1__io_8c.html#a85d02757a3ef2462045bb89d634b8036">nifti_set_allow_upper_fext</a>( <span class="keywordtype">int</span> allow ) ;
<a name="l00333"></a>00333 
<a name="l00334"></a>00334 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#a4062dff607da27712e1abbcdedd3c82e">valid_nifti_brick_list</a>(<a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> * nim , <span class="keywordtype">int</span> nbricks,
<a name="l00335"></a>00335                               <span class="keyword">const</span> <span class="keywordtype">int</span> * blist, <span class="keywordtype">int</span> disp_error);
<a name="l00336"></a>00336 
<a name="l00337"></a>00337 <span class="comment">/* znzFile operations */</span>
<a name="l00338"></a>00338 <a class="code" href="structznzptr.html">znzFile</a> <a class="code" href="nifti1__io_8c.html#aa3ba2c9ea10502fd5e619e55eb5ec662" title="Read in NIFTI-1 or ANALYZE-7.5 file (pair) header information into a nifti_image struct.">nifti_image_open</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> * hname, <span class="keywordtype">char</span> * opts, <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> ** nim);
<a name="l00339"></a>00339 <a class="code" href="structznzptr.html">znzFile</a> <a class="code" href="nifti1__io_8c.html#a05ad147bd1f78fe6790ef1dc93278712">nifti_image_write_hdr_img</a>(<a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> *nim, <span class="keywordtype">int</span> write_data,
<a name="l00340"></a>00340                                   <span class="keyword">const</span> <span class="keywordtype">char</span>* opts);
<a name="l00341"></a>00341 <a class="code" href="structznzptr.html">znzFile</a> <a class="code" href="nifti1__io_8c.html#a23ba2ececf435189365329d11d138a24">nifti_image_write_hdr_img2</a>( <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> *nim , <span class="keywordtype">int</span> write_opts ,
<a name="l00342"></a>00342                <span class="keyword">const</span> <span class="keywordtype">char</span>* opts, <a class="code" href="structznzptr.html">znzFile</a> imgfile, <span class="keyword">const</span> <a class="code" href="structnifti__brick__list.html">nifti_brick_list</a> * NBL);
<a name="l00343"></a>00343 <span class="keywordtype">size_t</span>  <a class="code" href="nifti1__io_8c.html#afb6dff710966b4a8611726a9f846c683">nifti_read_buffer</a>(<a class="code" href="structznzptr.html">znzFile</a> fp, <span class="keywordtype">void</span>* datatptr, <span class="keywordtype">size_t</span> ntot,
<a name="l00344"></a>00344                          <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> *nim);
<a name="l00345"></a>00345 <span class="keywordtype">int</span>     <a class="code" href="nifti1__io_8c.html#ab8f4f74b33a153219e5c47e6f8046bf3">nifti_write_all_data</a>(<a class="code" href="structznzptr.html">znzFile</a> fp, <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> * nim,
<a name="l00346"></a>00346                              <span class="keyword">const</span> <a class="code" href="structnifti__brick__list.html">nifti_brick_list</a> * NBL);
<a name="l00347"></a>00347 <span class="keywordtype">size_t</span>  nifti_write_buffer(<a class="code" href="structznzptr.html">znzFile</a> fp, <span class="keyword">const</span> <span class="keywordtype">void</span> * buffer, <span class="keywordtype">size_t</span> numbytes);
<a name="l00348"></a>00348 <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> *<a class="code" href="nifti1__io_8c.html#ab1e7cfdc675f67b4dca809bae81e6e15">nifti_read_ascii_image</a>(<a class="code" href="structznzptr.html">znzFile</a> fp, <span class="keywordtype">char</span> *fname, <span class="keywordtype">int</span> flen,
<a name="l00349"></a>00349                          <span class="keywordtype">int</span> read_data);
<a name="l00350"></a>00350 <a class="code" href="structznzptr.html">znzFile</a> <a class="code" href="nifti1__io_8c.html#ad66767a91af38b906c955fb45b9e225b">nifti_write_ascii_image</a>(<a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> *nim, <span class="keyword">const</span> <a class="code" href="structnifti__brick__list.html">nifti_brick_list</a> * NBL,
<a name="l00351"></a>00351                          <span class="keyword">const</span> <span class="keywordtype">char</span> * opts, <span class="keywordtype">int</span> write_data, <span class="keywordtype">int</span> leave_open);
<a name="l00352"></a>00352 
<a name="l00353"></a>00353 
<a name="l00354"></a>00354 <span class="keywordtype">void</span> <a class="code" href="nifti1__io_8c.html#aeeccf4be6839946794c2cc1fdef26d4f">nifti_datatype_sizes</a>( <span class="keywordtype">int</span> datatype , <span class="keywordtype">int</span> *nbyper, <span class="keywordtype">int</span> *swapsize ) ;
<a name="l00355"></a>00355 
<a name="l00356"></a>00356 <span class="keywordtype">void</span> <a class="code" href="nifti1__io_8c.html#a84b68d5634ec94b5132e0067733e9f28">nifti_mat44_to_quatern</a>( <a class="code" href="structmat44.html">mat44</a> R ,
<a name="l00357"></a>00357                              <span class="keywordtype">float</span> *qb, <span class="keywordtype">float</span> *qc, <span class="keywordtype">float</span> *qd,
<a name="l00358"></a>00358                              <span class="keywordtype">float</span> *qx, <span class="keywordtype">float</span> *qy, <span class="keywordtype">float</span> *qz,
<a name="l00359"></a>00359                              <span class="keywordtype">float</span> *dx, <span class="keywordtype">float</span> *dy, <span class="keywordtype">float</span> *dz, <span class="keywordtype">float</span> *qfac ) ;
<a name="l00360"></a>00360 
<a name="l00361"></a>00361 <a class="code" href="structmat44.html">mat44</a> <a class="code" href="nifti1__io_8c.html#a4b183639b2e242ac32210fe3437f60d2">nifti_quatern_to_mat44</a>( <span class="keywordtype">float</span> qb, <span class="keywordtype">float</span> qc, <span class="keywordtype">float</span> qd,
<a name="l00362"></a>00362                               <span class="keywordtype">float</span> qx, <span class="keywordtype">float</span> qy, <span class="keywordtype">float</span> qz,
<a name="l00363"></a>00363                               <span class="keywordtype">float</span> dx, <span class="keywordtype">float</span> dy, <span class="keywordtype">float</span> dz, <span class="keywordtype">float</span> qfac );
<a name="l00364"></a>00364 
<a name="l00365"></a>00365 <a class="code" href="structmat44.html">mat44</a> <a class="code" href="nifti1__io_8c.html#a8c07c7b62ab67f0d0e901fdf4b755707">nifti_make_orthog_mat44</a>( <span class="keywordtype">float</span> r11, <span class="keywordtype">float</span> r12, <span class="keywordtype">float</span> r13 ,
<a name="l00366"></a>00366                                <span class="keywordtype">float</span> r21, <span class="keywordtype">float</span> r22, <span class="keywordtype">float</span> r23 ,
<a name="l00367"></a>00367                                <span class="keywordtype">float</span> r31, <span class="keywordtype">float</span> r32, <span class="keywordtype">float</span> r33  ) ;
<a name="l00368"></a>00368 
<a name="l00369"></a>00369 <span class="keywordtype">int</span> <a class="code" href="nifti1__io_8c.html#adf2a70eac549a80a246d380240a8d822">nifti_short_order</a>(<span class="keywordtype">void</span>) ;              <span class="comment">/* CPU byte order */</span>
<a name="l00370"></a>00370 
<a name="l00371"></a>00371 
<a name="l00372"></a>00372 <span class="comment">/* Orientation codes that might be returned from nifti_mat44_to_orientation().*/</span>
<a name="l00373"></a>00373 
<a name="l00374"></a>00374 <span class="preprocessor">#define NIFTI_L2R  1    </span><span class="comment">/* Left to Right         */</span>
<a name="l00375"></a>00375 <span class="preprocessor">#define NIFTI_R2L  2    </span><span class="comment">/* Right to Left         */</span>
<a name="l00376"></a>00376 <span class="preprocessor">#define NIFTI_P2A  3    </span><span class="comment">/* Posterior to Anterior */</span>
<a name="l00377"></a>00377 <span class="preprocessor">#define NIFTI_A2P  4    </span><span class="comment">/* Anterior to Posterior */</span>
<a name="l00378"></a>00378 <span class="preprocessor">#define NIFTI_I2S  5    </span><span class="comment">/* Inferior to Superior  */</span>
<a name="l00379"></a>00379 <span class="preprocessor">#define NIFTI_S2I  6    </span><span class="comment">/* Superior to Inferior  */</span>
<a name="l00380"></a>00380 
<a name="l00381"></a>00381 <span class="keywordtype">void</span> <a class="code" href="nifti1__io_8c.html#ad8ba2d4a127c3ee26af9909ce2aa59e8">nifti_mat44_to_orientation</a>( <a class="code" href="structmat44.html">mat44</a> R , <span class="keywordtype">int</span> *icod, <span class="keywordtype">int</span> *jcod, <span class="keywordtype">int</span> *kcod ) ;
<a name="l00382"></a>00382 
<a name="l00383"></a>00383 <span class="comment">/*--------------------- Low level IO routines ------------------------------*/</span>
<a name="l00384"></a>00384 
<a name="l00385"></a>00385 <span class="keywordtype">char</span> * <a class="code" href="nifti1__io_8c.html#acde0b000cd0b4c5edbe33454ebc0c86f">nifti_findhdrname</a> (<span class="keyword">const</span> <span class="keywordtype">char</span>* fname);
<a name="l00386"></a>00386 <span class="keywordtype">char</span> * <a class="code" href="nifti1__io_8c.html#a166171eee037df0d1f28a824e35faea5">nifti_findimgname</a> (<span class="keyword">const</span> <span class="keywordtype">char</span>* fname , <span class="keywordtype">int</span> nifti_type);
<a name="l00387"></a>00387 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#a6c17ed984533a4dede09b3bb6fa1fa17">nifti_is_gzfile</a>   (<span class="keyword">const</span> <span class="keywordtype">char</span>* fname);
<a name="l00388"></a>00388 
<a name="l00389"></a>00389 <span class="keywordtype">char</span> * <a class="code" href="nifti1__io_8c.html#a19cb2bca24ab79a5f0a0ec9b770d7454">nifti_makebasename</a>(<span class="keyword">const</span> <span class="keywordtype">char</span>* fname);
<a name="l00390"></a>00390 
<a name="l00391"></a>00391 
<a name="l00392"></a>00392 <span class="comment">/* other routines */</span>
<a name="l00393"></a>00393 <span class="keyword">struct </span><a class="code" href="structnifti__1__header.html" title="Data structure defining the fields in the nifti1 header. This binary header should be found at the be...">nifti_1_header</a>   <a class="code" href="nifti1__io_8c.html#ad1d2054b280d453c7bf680fc21b587a3">nifti_convert_nim2nhdr</a>(const <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a>* nim);
<a name="l00394"></a>00394 <a class="code" href="structnifti__1__header.html" title="Data structure defining the fields in the nifti1 header. This binary header should be found at the be...">nifti_1_header</a> * <a class="code" href="nifti1__io_8c.html#a2fde930d314f2fea6ce083c4db0412ee">nifti_make_new_header</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> arg_dims[], <span class="keywordtype">int</span> arg_dtype);
<a name="l00395"></a>00395 <a class="code" href="structnifti__1__header.html" title="Data structure defining the fields in the nifti1 header. This binary header should be found at the be...">nifti_1_header</a> * <a class="code" href="nifti1__io_8c.html#a5708391aec2c027b721fa0d40851d288">nifti_read_header</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *hname, <span class="keywordtype">int</span> *swapped, <span class="keywordtype">int</span> check);
<a name="l00396"></a>00396 <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a>    * <a class="code" href="nifti1__io_8c.html#a795557a96c6144716d0636879cf02bd5">nifti_copy_nim_info</a>(<span class="keyword">const</span> <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> * src);
<a name="l00397"></a>00397 <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a>    * <a class="code" href="nifti1__io_8c.html#ab18d6d70c046482f92fb802b74aafb11">nifti_make_new_nim</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> dims[], <span class="keywordtype">int</span> <a class="code" href="structnifti__1__header.html#ad5f8888fcc5fde14d3e387653721e270">datatype</a>,
<a name="l00398"></a>00398                                                       <span class="keywordtype">int</span> data_fill);
<a name="l00399"></a>00399 <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a>    * <a class="code" href="nifti1__io_8c.html#a2fa149a7af0a94b2718035809c3bf930">nifti_simple_init_nim</a>(<span class="keywordtype">void</span>);
<a name="l00400"></a>00400 <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a>    * <a class="code" href="nifti1__io_8c.html#aa7bd8fbb331c8d278506afb6f37fdbc2">nifti_convert_nhdr2nim</a>(<span class="keyword">struct</span> <a class="code" href="structnifti__1__header.html" title="Data structure defining the fields in the nifti1 header. This binary header should be found at the be...">nifti_1_header</a> nhdr,
<a name="l00401"></a>00401                                         <span class="keyword">const</span> <span class="keywordtype">char</span> * fname);
<a name="l00402"></a>00402 
<a name="l00403"></a>00403 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#a963647a644c757bf79652cf79d69ae18">nifti_hdr_looks_good</a>        (<span class="keyword">const</span> <a class="code" href="structnifti__1__header.html" title="Data structure defining the fields in the nifti1 header. This binary header should be found at the be...">nifti_1_header</a> * hdr);
<a name="l00404"></a>00404 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#ab03e74e929ca87ec226bd2e59899fc95">nifti_is_valid_datatype</a>     (<span class="keywordtype">int</span> dtype);
<a name="l00405"></a>00405 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#affc673e2c2768319574e46169462f115">nifti_is_valid_ecode</a>        (<span class="keywordtype">int</span> ecode);
<a name="l00406"></a>00406 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#a8cb200f44ed38709f534827ecf0aebed">nifti_nim_is_valid</a>          (<a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> * nim, <span class="keywordtype">int</span> complain);
<a name="l00407"></a>00407 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#ad9d44ba79bad0716b08d2888c5874012">nifti_nim_has_valid_dims</a>    (<a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> * nim, <span class="keywordtype">int</span> complain);
<a name="l00408"></a>00408 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#a5c42d2b1cf63b30950078ec5562e1f58">is_valid_nifti_type</a>         (<span class="keywordtype">int</span> nifti_type);
<a name="l00409"></a>00409 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#af31bef0754f87cbc281f3db357314e0c">nifti_test_datatype_sizes</a>   (<span class="keywordtype">int</span> verb);
<a name="l00410"></a>00410 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#a46c9636636122200ee108fb179dc23de">nifti_type_and_names_match</a>  (<a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> * nim, <span class="keywordtype">int</span> show_warn);
<a name="l00411"></a>00411 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#af6c9efd3e09141592c41803377c689a9">nifti_update_dims_from_array</a>(<a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> * nim);
<a name="l00412"></a>00412 <span class="keywordtype">void</span>   <a class="code" href="nifti1__io_8c.html#af37b47d8dcd832f0a2ea9758001ac622">nifti_set_iname_offset</a>      (<a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> *nim);
<a name="l00413"></a>00413 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#a5cb621a9f499db8c3f9de3c73628cc76">nifti_set_type_from_names</a>   (<a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> * nim);
<a name="l00414"></a>00414 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#af302324afc85693788cd7483b054fc86">nifti_add_extension</a>(<a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> * nim, <span class="keyword">const</span> <span class="keywordtype">char</span> * data, <span class="keywordtype">int</span> len,
<a name="l00415"></a>00415                            <span class="keywordtype">int</span> ecode );
<a name="l00416"></a>00416 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#a64c9a0bd020345de7e07606f07dcb960">nifti_compiled_with_zlib</a>    (<span class="keywordtype">void</span>);
<a name="l00417"></a>00417 <span class="keywordtype">int</span>    nifti_copy_extensions (<a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> *nim_dest,<span class="keyword">const</span> <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> *nim_src);
<a name="l00418"></a>00418 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#afd96262c6dd96e05ceaa08b3fbdff2c9">nifti_free_extensions</a> (<a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> *nim);
<a name="l00419"></a>00419 <span class="keywordtype">int</span>  * <a class="code" href="nifti1__io_8c.html#af07be076f40f7b4bd284488221c6d26f">nifti_get_intlist</a>     (<span class="keywordtype">int</span> nvals , <span class="keyword">const</span> <span class="keywordtype">char</span> *str);
<a name="l00420"></a>00420 <span class="keywordtype">char</span> * <a class="code" href="nifti1__io_8c.html#a98f42fe4268d9fff8a5b8c984f8731f1">nifti_strdup</a>          (<span class="keyword">const</span> <span class="keywordtype">char</span> *str);
<a name="l00421"></a>00421 <span class="keywordtype">int</span>    <a class="code" href="nifti1__io_8c.html#ae4827bde194fb79b17406da16216f81f">valid_nifti_extensions</a>(<span class="keyword">const</span> <a class="code" href="structnifti__image.html" title="High level data structure for open nifti datasets in the nifti1_io API. Note that this structure is n...">nifti_image</a> *nim);
<a name="l00422"></a>00422 
<a name="l00423"></a>00423 
<a name="l00424"></a>00424 <span class="comment">/*-------------------- Some C convenience macros ----------------------------*/</span>
<a name="l00425"></a>00425 
<a name="l00426"></a>00426 <span class="comment">/* NIfTI-1.1 extension codes:</span>
<a name="l00427"></a>00427 <span class="comment">   see http://nifti.nimh.nih.gov/nifti-1/documentation/faq#Q21 */</span>
<a name="l00428"></a>00428 
<a name="l00429"></a>00429 <span class="preprocessor">#define NIFTI_ECODE_IGNORE           0  </span><span class="comment">/* changed from UNKNOWN, 29 June 2005 */</span>
<a name="l00430"></a>00430 
<a name="l00431"></a>00431 <span class="preprocessor">#define NIFTI_ECODE_DICOM            2  </span><span class="comment">/* intended for raw DICOM attributes  */</span>
<a name="l00432"></a>00432 
<a name="l00433"></a>00433 <span class="preprocessor">#define NIFTI_ECODE_AFNI             4  </span><span class="comment">/* Robert W Cox: rwcox@nih.gov</span>
<a name="l00434"></a>00434 <span class="comment">                                           http://afni.nimh.nih.gov/afni      */</span>
<a name="l00435"></a>00435 
<a name="l00436"></a>00436 <span class="preprocessor">#define NIFTI_ECODE_COMMENT          6  </span><span class="comment">/* plain ASCII text only              */</span>
<a name="l00437"></a>00437 
<a name="l00438"></a>00438 <span class="preprocessor">#define NIFTI_ECODE_XCEDE            8  </span><span class="comment">/* David B Keator: dbkeator@uci.edu </span>
<a name="l00439"></a>00439 <span class="comment">                                           http://www.nbirn.net/Resources</span>
<a name="l00440"></a>00440 <span class="comment">                                                /Users/Applications/</span>
<a name="l00441"></a>00441 <span class="comment">                                                /xcede/index.htm              */</span>
<a name="l00442"></a>00442 
<a name="l00443"></a>00443 <span class="preprocessor">#define NIFTI_ECODE_JIMDIMINFO      10  </span><span class="comment">/* Mark A Horsfield:</span>
<a name="l00444"></a>00444 <span class="comment">                                           mah5@leicester.ac.uk</span>
<a name="l00445"></a>00445 <span class="comment">                                           http://someplace/something         */</span>
<a name="l00446"></a>00446 
<a name="l00447"></a>00447 <span class="preprocessor">#define NIFTI_ECODE_WORKFLOW_FWDS   12  </span><span class="comment">/* Kate Fissell: fissell@pitt.edu</span>
<a name="l00448"></a>00448 <span class="comment">                                           http://kraepelin.wpic.pitt.edu</span>
<a name="l00449"></a>00449 <span class="comment">                                            /~fissell/NIFTI_ECODE_WORKFLOW_FWDS</span>
<a name="l00450"></a>00450 <span class="comment">                                            /NIFTI_ECODE_WORKFLOW_FWDS.html   */</span>
<a name="l00451"></a>00451 
<a name="l00452"></a>00452 <span class="preprocessor">#define NIFTI_ECODE_FREESURFER      14  </span><span class="comment">/* http://surfer.nmr.mgh.harvard.edu  */</span>
<a name="l00453"></a>00453 
<a name="l00454"></a>00454 <span class="preprocessor">#define NIFTI_ECODE_PYPICKLE        16  </span><span class="comment">/* embedded Python objects</span>
<a name="l00455"></a>00455 <span class="comment">                                           http://niftilib.sourceforge.net</span>
<a name="l00456"></a>00456 <span class="comment">                                                 /pynifti                     */</span>
<a name="l00457"></a>00457 
<a name="l00458"></a>00458         <span class="comment">/* LONI MiND codes: http://www.loni.ucla.edu/twiki/bin/view/Main/MiND */</span>
<a name="l00459"></a>00459 <span class="preprocessor">#define NIFTI_ECODE_MIND_IDENT      18  </span><span class="comment">/* Vishal Patel: vishal.patel@ucla.edu*/</span>
<a name="l00460"></a>00460 <span class="preprocessor">#define NIFTI_ECODE_B_VALUE         20</span>
<a name="l00461"></a>00461 <span class="preprocessor"></span><span class="preprocessor">#define NIFTI_ECODE_SPHERICAL_DIRECTION 22</span>
<a name="l00462"></a>00462 <span class="preprocessor"></span><span class="preprocessor">#define NIFTI_ECODE_DT_COMPONENT    24</span>
<a name="l00463"></a>00463 <span class="preprocessor"></span><span class="preprocessor">#define NIFTI_ECODE_SHC_DEGREEORDER 26  </span><span class="comment">/* end LONI MiND codes                */</span>
<a name="l00464"></a>00464 
<a name="l00465"></a>00465 <span class="preprocessor">#define NIFTI_ECODE_VOXBO           28  </span><span class="comment">/* Dan Kimberg: www.voxbo.org         */</span>
<a name="l00466"></a>00466 
<a name="l00467"></a>00467 <span class="preprocessor">#define NIFTI_ECODE_CARET           30  </span><span class="comment">/* John Harwell: john@brainvis.wustl.edu</span>
<a name="l00468"></a>00468 <span class="comment">                                           http://brainvis.wustl.edu/wiki</span>
<a name="l00469"></a>00469 <span class="comment">                                             /index.php/Caret:Documentation</span>
<a name="l00470"></a>00470 <span class="comment">                                             :CaretNiftiExtension             */</span>
<a name="l00471"></a>00471 
<a name="l00472"></a>00472 <span class="preprocessor">#define NIFTI_MAX_ECODE             30  </span><span class="comment">/******* maximum extension code *******/</span>
<a name="l00473"></a>00473 
<a name="l00474"></a>00474 <span class="comment">/* nifti_type file codes */</span>
<a name="l00475"></a>00475 <span class="preprocessor">#define NIFTI_FTYPE_ANALYZE   0</span>
<a name="l00476"></a>00476 <span class="preprocessor"></span><span class="preprocessor">#define NIFTI_FTYPE_NIFTI1_1  1</span>
<a name="l00477"></a>00477 <span class="preprocessor"></span><span class="preprocessor">#define NIFTI_FTYPE_NIFTI1_2  2</span>
<a name="l00478"></a>00478 <span class="preprocessor"></span><span class="preprocessor">#define NIFTI_FTYPE_ASCII     3</span>
<a name="l00479"></a>00479 <span class="preprocessor"></span><span class="preprocessor">#define NIFTI_MAX_FTYPE       3    </span><span class="comment">/* this should match the maximum code */</span>
<a name="l00480"></a>00480 
<a name="l00481"></a>00481 <span class="comment">/*------------------------------------------------------------------------*/</span>
<a name="l00482"></a>00482 <span class="comment">/*-- the rest of these apply only to nifti1_io.c, check for _NIFTI1_IO_C_ */</span>
<a name="l00483"></a>00483 <span class="comment">/*                                                    Feb 9, 2005 [rickr] */</span>
<a name="l00484"></a>00484 <span class="preprocessor">#ifdef _NIFTI1_IO_C_</span>
<a name="l00485"></a>00485 <span class="preprocessor"></span>
<a name="l00486"></a>00486 <span class="keyword">typedef</span> <span class="keyword">struct </span>{
<a name="l00487"></a>00487     <span class="keywordtype">int</span> debug;               
<a name="l00488"></a>00488     <span class="keywordtype">int</span> skip_blank_ext;      
<a name="l00489"></a>00489     <span class="keywordtype">int</span> allow_upper_fext;    
<a name="l00490"></a>00490 } nifti_global_options;
<a name="l00491"></a>00491 
<a name="l00492"></a>00492 <span class="keyword">typedef</span> <span class="keyword">struct </span>{
<a name="l00493"></a>00493     <span class="keywordtype">int</span>    type;           <span class="comment">/* should match the NIFTI_TYPE_ #define */</span>
<a name="l00494"></a>00494     <span class="keywordtype">int</span>    nbyper;         <span class="comment">/* bytes per value, matches nifti_image */</span>
<a name="l00495"></a>00495     <span class="keywordtype">int</span>    swapsize;       <span class="comment">/* bytes per swap piece, matches nifti_image */</span>
<a name="l00496"></a>00496     <span class="keywordtype">char</span> * name;           <span class="comment">/* text string to match #define */</span>
<a name="l00497"></a>00497 } nifti_type_ele;
<a name="l00498"></a>00498 
<a name="l00499"></a>00499 <span class="preprocessor">#undef  LNI_FERR </span><span class="comment">/* local nifti file error, to be compact and repetative */</span>
<a name="l00500"></a>00500 <span class="preprocessor">#define LNI_FERR(func,msg,file)                                      \</span>
<a name="l00501"></a>00501 <span class="preprocessor">            fprintf(stderr,&quot;** ERROR (%s): %s &#39;%s&#39;\n&quot;,func,msg,file)</span>
<a name="l00502"></a>00502 <span class="preprocessor"></span>
<a name="l00503"></a>00503 <span class="preprocessor">#undef  swap_2</span>
<a name="l00504"></a>00504 <span class="preprocessor"></span><span class="preprocessor">#undef  swap_4</span>
<a name="l00505"></a>00505 <span class="preprocessor"></span><span class="preprocessor">#define swap_2(s) nifti_swap_2bytes(1,&amp;(s)) </span><span class="comment">/* s: 2-byte short; swap in place */</span>
<a name="l00506"></a>00506 <span class="preprocessor">#define swap_4(v) nifti_swap_4bytes(1,&amp;(v)) </span><span class="comment">/* v: 4-byte value; swap in place */</span>
<a name="l00507"></a>00507 
<a name="l00508"></a>00508                         <span class="comment">/***** isfinite() is a C99 macro, which is</span>
<a name="l00509"></a>00509 <span class="comment">                               present in many C implementations already *****/</span>
<a name="l00510"></a>00510 
<a name="l00511"></a>00511 <span class="preprocessor">#undef IS_GOOD_FLOAT</span>
<a name="l00512"></a>00512 <span class="preprocessor"></span><span class="preprocessor">#undef FIXED_FLOAT</span>
<a name="l00513"></a>00513 <span class="preprocessor"></span>
<a name="l00514"></a>00514 <span class="preprocessor">#ifdef isfinite       </span><span class="comment">/* use isfinite() to check floats/doubles for goodness */</span>
<a name="l00515"></a>00515 <span class="preprocessor">#  define IS_GOOD_FLOAT(x) isfinite(x)       </span><span class="comment">/* check if x is a &quot;good&quot; float */</span>
<a name="l00516"></a>00516 <span class="preprocessor">#  define FIXED_FLOAT(x)   (isfinite(x) ? (x) : 0)           </span><span class="comment">/* fixed if bad */</span>
<a name="l00517"></a>00517 <span class="preprocessor">#else</span>
<a name="l00518"></a>00518 <span class="preprocessor"></span><span class="preprocessor">#  define IS_GOOD_FLOAT(x) 1                               </span><span class="comment">/* don&#39;t check it */</span>
<a name="l00519"></a>00519 <span class="preprocessor">#  define FIXED_FLOAT(x)   (x)                               </span><span class="comment">/* don&#39;t fix it */</span>
<a name="l00520"></a>00520 <span class="preprocessor">#endif</span>
<a name="l00521"></a>00521 <span class="preprocessor"></span>
<a name="l00522"></a>00522 <span class="preprocessor">#undef  ASSIF                                 </span><span class="comment">/* assign v to *p, if possible */</span>
<a name="l00523"></a>00523 <span class="preprocessor">#define ASSIF(p,v) if( (p)!=NULL ) *(p) = (v)</span>
<a name="l00524"></a>00524 <span class="preprocessor"></span>
<a name="l00525"></a>00525 <span class="preprocessor">#undef  MSB_FIRST</span>
<a name="l00526"></a>00526 <span class="preprocessor"></span><span class="preprocessor">#undef  LSB_FIRST</span>
<a name="l00527"></a>00527 <span class="preprocessor"></span><span class="preprocessor">#undef  REVERSE_ORDER</span>
<a name="l00528"></a>00528 <span class="preprocessor"></span><span class="preprocessor">#define LSB_FIRST 1</span>
<a name="l00529"></a>00529 <span class="preprocessor"></span><span class="preprocessor">#define MSB_FIRST 2</span>
<a name="l00530"></a>00530 <span class="preprocessor"></span><span class="preprocessor">#define REVERSE_ORDER(x) (3-(x))    </span><span class="comment">/* convert MSB_FIRST &lt;--&gt; LSB_FIRST */</span>
<a name="l00531"></a>00531 
<a name="l00532"></a>00532 <span class="preprocessor">#define LNI_MAX_NIA_EXT_LEN 100000  </span><span class="comment">/* consider a longer extension invalid */</span>
<a name="l00533"></a>00533 
<a name="l00534"></a>00534 <span class="preprocessor">#endif  </span><span class="comment">/* _NIFTI1_IO_C_ section */</span>
<a name="l00535"></a>00535 <span class="comment">/*------------------------------------------------------------------------*/</span>
<a name="l00536"></a>00536 
<a name="l00537"></a>00537 <span class="comment">/*=================*/</span>
<a name="l00538"></a>00538 <span class="preprocessor">#ifdef  __cplusplus</span>
<a name="l00539"></a>00539 <span class="preprocessor"></span>}
<a name="l00540"></a>00540 <span class="preprocessor">#endif</span>
<a name="l00541"></a>00541 <span class="preprocessor"></span><span class="comment">/*=================*/</span>
<a name="l00542"></a>00542 
<a name="l00543"></a>00543 <span class="preprocessor">#endif </span><span class="comment">/* _NIFTI_IO_HEADER_ */</span>
</pre></div></div>
</div>
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&#160;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&#160;</span>Defines</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<hr class="footer"/><address class="footer"><small>Generated on Tue Jul 26 2011 for nifti1_io by&#160;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </small></address>
</body>
</html>