Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
mpim-sw
libcdi
Commits
71e29ecc
Commit
71e29ecc
authored
Jan 08, 2014
by
Uwe Schulzweida
Browse files
streamInqGinfo: added support for GRIB files > 2GB
parent
a05b2fa2
Changes
10
Hide whitespace changes
Inline
Side-by-side
ChangeLog
View file @
71e29ecc
2014-01-08 Uwe Schulzweida <Uwe.Schulzweida@zmaw.de>
* streamInqGinfo: added support for GRIB files > 2GB
2014-01-03 Uwe Schulzweida <Uwe.Schulzweida@zmaw.de>
* streamOpenA, streamOpen: parameter recordBufIsToBeCreated missing in call to cdiStreamOpenDefaultDelegate() (bug fix)
...
...
doc/tex/c_quick_ref.tex
View file @
71e29ecc
...
...
@@ -4,14 +4,1335 @@
This appendix provide a brief listing of the C language bindings of the
CDI library routines:
\section*
{
\tt
\htmlref
{
pioInit
}{
pioInit
}}
\section*
{
\tt
\htmlref
{
cdiClearAdditionalKeys
}{
cdiClearAdditionalKeys
}}
\begin{verbatim}
MPI
_
Comm pioInit (MPI
_
Comm commSuper, int nProcsIO, int IOMode,
int *pioNamespace, float partInflate,
void (*postCommSetupActions)(void));
void cdiClearAdditionalKeys ();
\end{verbatim}
initialize I/O server processes and communication.
Clear the list of additional GRIB keys..
\section*
{
\tt
\htmlref
{
cdiDefAdditionalKey
}{
cdiDefAdditionalKey
}}
\begin{verbatim}
void cdiDefAdditionalKey (const char *string);
\end{verbatim}
Register an additional GRIB key which is read when file is opened..
\section*
{
\tt
\htmlref
{
gridCreate
}{
gridCreate
}}
\begin{verbatim}
int gridCreate (int gridtype, int size);
\end{verbatim}
Create a horizontal Grid.
\section*
{
\tt
\htmlref
{
gridDefNP
}{
gridDefNP
}}
\begin{verbatim}
void gridDefNP (int gridID, int np);
\end{verbatim}
Define the number of parallels between a pole and the equator.
\section*
{
\tt
\htmlref
{
gridDefNumber
}{
gridDefNumber
}}
\begin{verbatim}
void gridDefNumber (int gridID, int number);
\end{verbatim}
Define the reference number for an unstructured grid.
\section*
{
\tt
\htmlref
{
gridDefNvertex
}{
gridDefNvertex
}}
\begin{verbatim}
void gridDefNvertex (int gridID, int nvertex);
\end{verbatim}
Define the number of vertex of a Gridbox.
\section*
{
\tt
\htmlref
{
gridDefPosition
}{
gridDefPosition
}}
\begin{verbatim}
void gridDefPosition (int gridID, int position);
\end{verbatim}
Define the position of grid in the reference file.
\section*
{
\tt
\htmlref
{
gridDefPrec
}{
gridDefPrec
}}
\begin{verbatim}
void gridDefPrec (int gridID, int prec);
\end{verbatim}
Define the precision of a Grid.
\section*
{
\tt
\htmlref
{
gridDefReference
}{
gridDefReference
}}
\begin{verbatim}
void gridDefReference (int gridID, const char *reference);
\end{verbatim}
Define the reference URI for an unstructured grid.
\section*
{
\tt
\htmlref
{
gridDefUUID
}{
gridDefUUID
}}
\begin{verbatim}
void gridDefUUID (int gridID, const char *uuid
_
cbuf);
\end{verbatim}
Define the UUID of an unstructured grid.
\section*
{
\tt
\htmlref
{
gridDefXbounds
}{
gridDefXbounds
}}
\begin{verbatim}
void gridDefXbounds (int gridID, const double *xbounds
_
vec);
\end{verbatim}
Define the bounds of a X-axis.
\section*
{
\tt
\htmlref
{
gridDefXlongname
}{
gridDefXlongname
}}
\begin{verbatim}
void gridDefXlongname (int gridID, const char *xlongname);
\end{verbatim}
Define the longname of a X-axis.
\section*
{
\tt
\htmlref
{
gridDefXname
}{
gridDefXname
}}
\begin{verbatim}
void gridDefXname (int gridID, const char *xname);
\end{verbatim}
Define the name of a X-axis.
\section*
{
\tt
\htmlref
{
gridDefXsize
}{
gridDefXsize
}}
\begin{verbatim}
void gridDefXsize (int gridID, int xsize);
\end{verbatim}
Define the size of a X-axis.
\section*
{
\tt
\htmlref
{
gridDefXunits
}{
gridDefXunits
}}
\begin{verbatim}
void gridDefXunits (int gridID, const char *xunits);
\end{verbatim}
Define the units of a X-axis.
\section*
{
\tt
\htmlref
{
gridDefXvals
}{
gridDefXvals
}}
\begin{verbatim}
void gridDefXvals (int gridID, const double *xvals
_
vec);
\end{verbatim}
Define the values of a X-axis.
\section*
{
\tt
\htmlref
{
gridDefYbounds
}{
gridDefYbounds
}}
\begin{verbatim}
void gridDefYbounds (int gridID, const double *ybounds
_
vec);
\end{verbatim}
Define the bounds of a Y-axis.
\section*
{
\tt
\htmlref
{
gridDefYlongname
}{
gridDefYlongname
}}
\begin{verbatim}
void gridDefYlongname (int gridID, const char *ylongname);
\end{verbatim}
Define the longname of a Y-axis.
\section*
{
\tt
\htmlref
{
gridDefYname
}{
gridDefYname
}}
\begin{verbatim}
void gridDefYname (int gridID, const char *yname);
\end{verbatim}
Define the name of a Y-axis.
\section*
{
\tt
\htmlref
{
gridDefYsize
}{
gridDefYsize
}}
\begin{verbatim}
void gridDefYsize (int gridID, int ysize);
\end{verbatim}
Define the size of a Y-axis.
\section*
{
\tt
\htmlref
{
gridDefYunits
}{
gridDefYunits
}}
\begin{verbatim}
void gridDefYunits (int gridID, const char *yunits);
\end{verbatim}
Define the units of a Y-axis.
\section*
{
\tt
\htmlref
{
gridDefYvals
}{
gridDefYvals
}}
\begin{verbatim}
void gridDefYvals (int gridID, const double *yvals
_
vec);
\end{verbatim}
Define the values of a Y-axis.
\section*
{
\tt
\htmlref
{
gridDestroy
}{
gridDestroy
}}
\begin{verbatim}
void gridDestroy (int gridID);
\end{verbatim}
Destroy a horizontal Grid.
\section*
{
\tt
\htmlref
{
gridDuplicate
}{
gridDuplicate
}}
\begin{verbatim}
int gridDuplicate (int gridID);
\end{verbatim}
Duplicate a Grid.
\section*
{
\tt
\htmlref
{
gridInqNP
}{
gridInqNP
}}
\begin{verbatim}
int gridInqNP (int gridID);
\end{verbatim}
Get the number of parallels between a pole and the equator.
\section*
{
\tt
\htmlref
{
gridInqNumber
}{
gridInqNumber
}}
\begin{verbatim}
int gridInqNumber (int gridID);
\end{verbatim}
Get the reference number to an unstructured grid.
\section*
{
\tt
\htmlref
{
gridInqNvertex
}{
gridInqNvertex
}}
\begin{verbatim}
int gridInqNvertex (int gridID);
\end{verbatim}
Get the number of vertex of a Gridbox.
\section*
{
\tt
\htmlref
{
gridInqPosition
}{
gridInqPosition
}}
\begin{verbatim}
int gridInqPosition (int gridID);
\end{verbatim}
Get the position of grid in the reference file.
\section*
{
\tt
\htmlref
{
gridInqPrec
}{
gridInqPrec
}}
\begin{verbatim}
int gridInqPrec (int gridID);
\end{verbatim}
Get the precision of a Grid.
\section*
{
\tt
\htmlref
{
gridInqReference
}{
gridInqReference
}}
\begin{verbatim}
int gridInqReference (int gridID, char *reference);
\end{verbatim}
Get the reference URI to an unstructured grid.
\section*
{
\tt
\htmlref
{
gridInqSize
}{
gridInqSize
}}
\begin{verbatim}
int gridInqSize (int gridID);
\end{verbatim}
Get the size of a Grid.
\section*
{
\tt
\htmlref
{
gridInqType
}{
gridInqType
}}
\begin{verbatim}
int gridInqType (int gridID);
\end{verbatim}
Get the type of a Grid.
\section*
{
\tt
\htmlref
{
gridInqUUID
}{
gridInqUUID
}}
\begin{verbatim}
char *gridInqUUID (int gridID, char *uuid
_
cbuf);
\end{verbatim}
Get the UUID of an unstructured grid.
\section*
{
\tt
\htmlref
{
gridInqXbounds
}{
gridInqXbounds
}}
\begin{verbatim}
int gridInqXbounds (int gridID, double *xbounds
_
vec);
\end{verbatim}
Get the bounds of a X-axis.
\section*
{
\tt
\htmlref
{
gridInqXlongname
}{
gridInqXlongname
}}
\begin{verbatim}
void gridInqXlongname (int gridID, char *xlongname);
\end{verbatim}
Get the longname of a X-axis.
\section*
{
\tt
\htmlref
{
gridInqXname
}{
gridInqXname
}}
\begin{verbatim}
void gridInqXname (int gridID, char *xname);
\end{verbatim}
Get the name of a X-axis.
\section*
{
\tt
\htmlref
{
gridInqXsize
}{
gridInqXsize
}}
\begin{verbatim}
int gridInqXsize (int gridID);
\end{verbatim}
Get the size of a X-axis.
\section*
{
\tt
\htmlref
{
gridInqXstdname
}{
gridInqXstdname
}}
\begin{verbatim}
void gridInqXstdname (int gridID, char *xstdname);
\end{verbatim}
Get the standard name of a X-axis.
\section*
{
\tt
\htmlref
{
gridInqXunits
}{
gridInqXunits
}}
\begin{verbatim}
void gridInqXunits (int gridID, char *xunits);
\end{verbatim}
Get the units of a X-axis.
\section*
{
\tt
\htmlref
{
gridInqXval
}{
gridInqXval
}}
\begin{verbatim}
double gridInqXval (int gridID, int index);
\end{verbatim}
Get one value of a X-axis.
\section*
{
\tt
\htmlref
{
gridInqXvals
}{
gridInqXvals
}}
\begin{verbatim}
int gridInqXvals (int gridID, double *xvals
_
vec);
\end{verbatim}
Get all values of a X-axis.
\section*
{
\tt
\htmlref
{
gridInqYbounds
}{
gridInqYbounds
}}
\begin{verbatim}
int gridInqYbounds (int gridID, double *ybounds
_
vec);
\end{verbatim}
Get the bounds of a Y-axis.
\section*
{
\tt
\htmlref
{
gridInqYlongname
}{
gridInqYlongname
}}
\begin{verbatim}
void gridInqYlongname (int gridID, char *ylongname);
\end{verbatim}
Get the longname of a Y-axis.
\section*
{
\tt
\htmlref
{
gridInqYname
}{
gridInqYname
}}
\begin{verbatim}
void gridInqYname (int gridID, char *yname);
\end{verbatim}
Get the name of a Y-axis.
\section*
{
\tt
\htmlref
{
gridInqYsize
}{
gridInqYsize
}}
\begin{verbatim}
int gridInqYsize (int gridID);
\end{verbatim}
Get the size of a Y-axis.
\section*
{
\tt
\htmlref
{
gridInqYstdname
}{
gridInqYstdname
}}
\begin{verbatim}
void gridInqYstdname (int gridID, char *ystdname);
\end{verbatim}
Get the standard name of a Y-axis.
\section*
{
\tt
\htmlref
{
gridInqYunits
}{
gridInqYunits
}}
\begin{verbatim}
void gridInqYunits (int gridID, char *yunits);
\end{verbatim}
Get the units of a Y-axis.
\section*
{
\tt
\htmlref
{
gridInqYval
}{
gridInqYval
}}
\begin{verbatim}
double gridInqYval (int gridID, int index);
\end{verbatim}
Get one value of a Y-axis.
\section*
{
\tt
\htmlref
{
gridInqYvals
}{
gridInqYvals
}}
\begin{verbatim}
int gridInqYvals (int gridID, double *yvals
_
vec);
\end{verbatim}
Get all values of a Y-axis.
\section*
{
\tt
\htmlref
{
streamClose
}{
streamClose
}}
\begin{verbatim}
void streamClose (int streamID);
\end{verbatim}
Close an open dataset.
\section*
{
\tt
\htmlref
{
streamDefByteorder
}{
streamDefByteorder
}}
\begin{verbatim}
void streamDefByteorder (int streamID, int byteorder);
\end{verbatim}
Define the byteorder.
\section*
{
\tt
\htmlref
{
streamDefCompLevel
}{
streamDefCompLevel
}}
\begin{verbatim}
void streamDefCompLevel (int streamID, int complevel);
\end{verbatim}
Define compression level.
\section*
{
\tt
\htmlref
{
streamDefCompType
}{
streamDefCompType
}}
\begin{verbatim}
void streamDefCompType (int streamID, int comptype);
\end{verbatim}
Define compression type.
\section*
{
\tt
\htmlref
{
streamDefTimestep
}{
streamDefTimestep
}}
\begin{verbatim}
int streamDefTimestep (int streamID, int tsID);
\end{verbatim}
Define time step.
\section*
{
\tt
\htmlref
{
streamDefVlist
}{
streamDefVlist
}}
\begin{verbatim}
void streamDefVlist (int streamID, int vlistID);
\end{verbatim}
Define the Vlist for a stream.
\section*
{
\tt
\htmlref
{
streamInqByteorder
}{
streamInqByteorder
}}
\begin{verbatim}
int streamInqByteorder (int streamID);
\end{verbatim}
Get the byteorder.
\section*
{
\tt
\htmlref
{
streamInqCompLevel
}{
streamInqCompLevel
}}
\begin{verbatim}
int streamInqCompLevel (int streamID);
\end{verbatim}
Get compression level.
\section*
{
\tt
\htmlref
{
streamInqCompType
}{
streamInqCompType
}}
\begin{verbatim}
int streamInqCompType (int streamID);
\end{verbatim}
Get compression type.
\section*
{
\tt
\htmlref
{
streamInqFiletype
}{
streamInqFiletype
}}
\begin{verbatim}
int streamInqFiletype (int streamID);
\end{verbatim}
Get the filetype.
\section*
{
\tt
\htmlref
{
streamInqTimestep
}{
streamInqTimestep
}}
\begin{verbatim}
int streamInqTimestep (int streamID, int tsID);
\end{verbatim}
Get time step.
\section*
{
\tt
\htmlref
{
streamInqVlist
}{
streamInqVlist
}}
\begin{verbatim}
int streamInqVlist (int streamID);
\end{verbatim}
Get the Vlist of a stream.
\section*
{
\tt
\htmlref
{
streamOpenRead
}{
streamOpenRead
}}
\begin{verbatim}
int streamOpenRead (const char *path);
\end{verbatim}
Open a dataset for reading.
\section*
{
\tt
\htmlref
{
streamOpenWrite
}{
streamOpenWrite
}}
\begin{verbatim}
int streamOpenWrite (const char *path, int filetype);
\end{verbatim}
Create a new dataset.
\section*
{
\tt
\htmlref
{
streamReadVar
}{
streamReadVar
}}
\begin{verbatim}
void streamReadVar (int streamID, int varID, double *data
_
vec, int *nmiss);
\end{verbatim}
Read a variable.
\section*
{
\tt
\htmlref
{
streamReadVarSlice
}{
streamReadVarSlice
}}
\begin{verbatim}
void streamReadVarSlice (int streamID, int varID, int levelID, double *data
_
vec,
int *nmiss);
\end{verbatim}
Read a horizontal slice of a variable.
\section*
{
\tt
\htmlref
{
streamSync
}{
streamSync
}}
\begin{verbatim}
void streamSync (int streamID);
\end{verbatim}
Synchronize an Open Dataset to Disk.
\section*
{
\tt
\htmlref
{
streamWriteVar
}{
streamWriteVar
}}
\begin{verbatim}
void streamWriteVar (int streamID, int varID, const double *data
_
vec, int nmiss);
\end{verbatim}
Write a variable.
\section*
{
\tt
\htmlref
{
streamWriteVarSlice
}{
streamWriteVarSlice
}}
\begin{verbatim}
void streamWriteVarSlice (int streamID, int varID, int levelID,
const double *data
_
vec, int nmiss);
\end{verbatim}
Write a horizontal slice of a variable.
\section*
{
\tt
\htmlref
{
taxisCreate
}{
taxisCreate
}}
\begin{verbatim}
int taxisCreate (int timetype);
\end{verbatim}
Create a Time axis.
\section*
{
\tt
\htmlref
{
taxisDefCalendar
}{
taxisDefCalendar
}}
\begin{verbatim}
void taxisDefCalendar (int taxisID, int calendar);
\end{verbatim}
Define the calendar.
\section*
{
\tt
\htmlref
{
taxisDefRdate
}{
taxisDefRdate
}}
\begin{verbatim}