cta_obsdescr_table.h

Go to the documentation of this file.
00001 /*
00002 COSTA: Problem solving environment for data assimilation
00003 Copyright (C) 2005  Nils van Velzen
00004 
00005 This library is free software; you can redistribute it and/or
00006 modify it under the terms of the GNU Lesser General Public
00007 License as published by the Free Software Foundation; either
00008 version 2.1 of the License, or (at your option) any later version.
00009 
00010 This library is distributed in the hope that it will be useful,
00011 but WITHOUT ANY WARRANTY; without even the implied warranty of
00012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00013 Lesser General Public License for more details.
00014 
00015 You should have received a copy of the GNU Lesser General Public
00016 License along with this library; if not, write to the Free Software
00017 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00018 */
00019 
00020 #include <string.h>
00021 #include <stdio.h>
00022 #include <math.h>
00023 #include <memory.h>
00024 #include "cta.h"
00025 
00026 typedef struct {
00027 int nkeys;
00028 int nmeasr;
00029 char **Keys;
00030 char ***Columns;
00031 } CTAI_ObsDescr_table;
00032 
00033 #ifdef __cplusplus
00034 extern "C" {
00035 #endif
00036 
00037 /** \brief Explanation
00038  *
00039  * \param memsize         O  The number of bytes which are necessary to 
00040  *                           store one CTAI_SObs_sqlite3, with a 
00041  *                           pointer to the contents (data), 
00042  *                           but without the contents themselves.
00043  * \param retval          O  Error code (see cta_datatypes.h for possible 
00044  *                           error codes)
00045  * \return no return value
00046  */
00047 void CTAI_ObsDescr_table_Create_Size(int *memsize, int *retval);
00048 
00049  /** \brief Allocate the memory which is necessary to 
00050  *          store the data necessary for a sqlite3-observer
00051  *
00052  * \param myhandle        I  Handle assigned by COSTA
00053  * \param descr           I  The sqlite3-observation description
00054  *                           for which the memory must be
00055  *                           allocated
00056  * \param usrdat          I  User data
00057  * \param retval          O  Error code 
00058  * \return no return value
00059  */
00060 void CTAI_ObsDescr_table_Create_Init(CTA_ObsDescr myhandle, CTAI_ObsDescr_table *descr,
00061 CTA_Handle this, CTA_Handle *usrdat, int *retval);
00062 
00063 /** \brief Explanation
00064  *
00065  * \param                 IO descr
00066  * \param                 IO Keys
00067  * \param retval          O  Error code 
00068  * \return no return value
00069  */
00070 void CTAI_ObsDescr_table_Get_Keys(CTAI_ObsDescr_table *descr, CTA_Vector *Keys, int *retval);
00071 
00072 /** \brief Explanation
00073  *
00074  * \param                 IO descr
00075  * \param                 IO nkeys
00076  * \param retval          O  Error code 
00077  * \return no return value
00078  */
00079 void CTAI_ObsDescr_table_Property_Count(CTAI_ObsDescr_table *descr, int *nkeys, int *retval);
00080 
00081 /** \brief Explanation
00082  *
00083  * \param descr           I 
00084  * \param nobs            I 
00085  * \param retval          O Error code 
00086  * \return no return value
00087  */
00088 void CTAI_ObsDescr_table_Observation_Count(CTAI_ObsDescr_table *descr, int *nobs, int *retval);
00089 
00090 /** \brief Explanation
00091  *
00092  * \param descr           I 
00093  * \param Key             I 
00094  * \param Properties      I 
00095  * \param datatype        I 
00096  * \param nobs            I 
00097  * \param retval          O Error code 
00098  * \return no return value
00099  */
00100 void CTAI_ObsDescr_table_Get_Properties(CTAI_ObsDescr_table *descr, const char *Key, CTA_Vector *Properties,
00101          CTA_Datatype *datatype,int *retval);
00102 
00103 /** \brief Explanation
00104  *
00105  * \param descr           I 
00106  * \param nobs            I 
00107  * \param usrdat          I 
00108  * \param retval          O Error code 
00109  * \return no return value
00110  */
00111 void CTAI_ObsDescr_table_Export(CTAI_ObsDescr_table *descr, CTA_Handle *usrdat, int *retval);
00112  
00113 /** \brief Explanation
00114  *
00115  * \param descr           I 
00116  * \param retval          O Error code 
00117  * \return no return value
00118  */
00119 void CTAI_ObsDescr_table_Free(CTAI_ObsDescr_table *descr, int *retval);
00120 
00121 
00122 /** \brief The vector h_func is filled with COSTA-function handles of the 
00123  *         implementations in this file.
00124  * \param hobsdescrcl     I 
00125  * \return no return value
00126  */
00127 void CTA_ObsDescr_table_initialise(CTA_ObsDescrClass *hobsdescrcl);
00128 
00129 #ifdef __cplusplus
00130 }
00131 #endif
00132 

Generated on Mon Apr 6 14:05:58 2009 for COSTA by  doxygen 1.5.2