libdsdb3  3.0
 All Data Structures Files Functions Variables Typedefs Enumerations Macros Groups
dbog_dod.h
Go to the documentation of this file.
1 /*******************************************************************************
2 *
3 * COPYRIGHT (C) 2010 Battelle Memorial Institute. All Rights Reserved.
4 *
5 ********************************************************************************
6 *
7 * Author:
8 * name: Brian Ermold
9 * phone: (509) 375-2277
10 * email: brian.ermold@pnl.gov
11 *
12 ********************************************************************************
13 *
14 * REPOSITORY INFORMATION:
15 * $Revision: 54207 $
16 * $Author: ermold $
17 * $Date: 2014-05-02 20:50:34 +0000 (Fri, 02 May 2014) $
18 *
19 *******************************************************************************/
20 
21 /** @file dbog_dod.h
22  * Header file for DOD object group functions.
23  */
24 
25 #ifndef _DBOG_DOD_H_
26 #define _DBOG_DOD_H_ 1
27 
28 #include "dbconn.h"
29 
30 /*@{*/
31 /** @privatesection */
32 
33 /*******************************************************************************
34 * Highest DOD Version
35 */
36 
37 DBStatus dodog_get_highest_dod_version(
38  DBConn *dbconn,
39  const char *dsc_name,
40  const char *dsc_level,
41  char **result);
42 
43 /*******************************************************************************
44 * DOD Dimensions
45 */
46 
47 DBStatus dodog_get_dod_dims(
48  DBConn *dbconn,
49  const char *dsc_name,
50  const char *dsc_level,
51  const char *dod_version,
52  DBResult **result);
53 
54 #define DodDimName(dbres,row) DB_RESULT(dbres,row,0)
55 #define DodDimLength(dbres,row) DB_RESULT(dbres,row,1)
56 #define DodDimOrder(dbres,row) DB_RESULT(dbres,row,2)
57 
58 /*******************************************************************************
59 * DOD Attributes
60 */
61 
62 DBStatus dodog_get_dod_atts(
63  DBConn *dbconn,
64  const char *dsc_name,
65  const char *dsc_level,
66  const char *dod_version,
67  DBResult **result);
68 
69 #define DodAttName(dbres,row) DB_RESULT(dbres,row,0)
70 #define DodAttType(dbres,row) DB_RESULT(dbres,row,1)
71 #define DodAttValue(dbres,row) DB_RESULT(dbres,row,2)
72 #define DodAttOrder(dbres,row) DB_RESULT(dbres,row,3)
73 
74 /*******************************************************************************
75 * DOD Variables
76 */
77 
78 DBStatus dodog_get_dod_vars(
79  DBConn *dbconn,
80  const char *dsc_name,
81  const char *dsc_level,
82  const char *dod_version,
83  DBResult **result);
84 
85 #define DodVarName(dbres,row) DB_RESULT(dbres,row,0)
86 #define DodVarType(dbres,row) DB_RESULT(dbres,row,1)
87 #define DodVarOrder(dbres,row) DB_RESULT(dbres,row,2)
88 
89 /*******************************************************************************
90 * DOD Variable Dimensions
91 */
92 
93 DBStatus dodog_get_dod_var_dims(
94  DBConn *dbconn,
95  const char *dsc_name,
96  const char *dsc_level,
97  const char *dod_version,
98  const char *var_name,
99  DBResult **result);
100 
101 #define DodVarDimVarName(dbres,row) DB_RESULT(dbres,row,0)
102 #define DodVarDimName(dbres,row) DB_RESULT(dbres,row,1)
103 #define DodVarDimLength(dbres,row) DB_RESULT(dbres,row,2)
104 #define DodVarDimVarOrder(dbres,row) DB_RESULT(dbres,row,3)
105 #define DodVarDimOrder(dbres,row) DB_RESULT(dbres,row,4)
106 
107 /*******************************************************************************
108 * DOD Variable Attributes
109 */
110 
111 DBStatus dodog_get_dod_var_atts(
112  DBConn *dbconn,
113  const char *dsc_name,
114  const char *dsc_level,
115  const char *dod_version,
116  const char *var_name,
117  DBResult **result);
118 
119 #define DodVarAttVarName(dbres,row) DB_RESULT(dbres,row,0)
120 #define DodVarAttName(dbres,row) DB_RESULT(dbres,row,1)
121 #define DodVarAttType(dbres,row) DB_RESULT(dbres,row,2)
122 #define DodVarAttValue(dbres,row) DB_RESULT(dbres,row,3)
123 #define DodVarAttVarOrder(dbres,row) DB_RESULT(dbres,row,4)
124 #define DodVarAttOrder(dbres,row) DB_RESULT(dbres,row,5)
125 
126 /*******************************************************************************
127 * Datastream DODs
128 */
129 
130 DBStatus dodog_get_ds_dod_versions(
131  DBConn *dbconn,
132  const char *site,
133  const char *facility,
134  const char *dsc_name,
135  const char *dsc_level,
136  DBResult **result);
137 
138 #define DsDodTime(dbres,row) DB_RESULT(dbres,row,0)
139 #define DsDodVersion(dbres,row) DB_RESULT(dbres,row,1)
140 
141 /*******************************************************************************
142 * Datastream Attributes
143 */
144 
145 DBStatus dodog_get_ds_atts(
146  DBConn *dbconn,
147  const char *site,
148  const char *facility,
149  const char *dsc_name,
150  const char *dsc_level,
151  DBResult **result);
152 
153 #define DsAttName(dbres,row) DB_RESULT(dbres,row,0)
154 #define DsAttType(dbres,row) DB_RESULT(dbres,row,1)
155 #define DsAttValue(dbres,row) DB_RESULT(dbres,row,2)
156 
157 /*******************************************************************************
158 * Time Varying Datastream Attributes
159 */
160 
161 DBStatus dodog_get_ds_att_times(
162  DBConn *dbconn,
163  const char *site,
164  const char *facility,
165  const char *dsc_name,
166  const char *dsc_level,
167  const char *att_name,
168  DBResult **result);
169 
170 #define DsAttTimeName(dbres,row) DB_RESULT(dbres,row,0)
171 #define DsAttTimeTime(dbres,row) DB_RESULT(dbres,row,1)
172 
173 
174 DBStatus dodog_get_ds_time_atts(
175  DBConn *dbconn,
176  const char *site,
177  const char *facility,
178  const char *dsc_name,
179  const char *dsc_level,
180  time_t att_time,
181  DBResult **result);
182 
183 #define DsTimeAttName(dbres,row) DB_RESULT(dbres,row,0)
184 #define DsTimeAttTime(dbres,row) DB_RESULT(dbres,row,1)
185 #define DsTimeAttType(dbres,row) DB_RESULT(dbres,row,2)
186 #define DsTimeAttValue(dbres,row) DB_RESULT(dbres,row,3)
187 
188 /*******************************************************************************
189 * Datastream Variable Attributes
190 */
191 
192 DBStatus dodog_get_ds_var_atts(
193  DBConn *dbconn,
194  const char *site,
195  const char *facility,
196  const char *dsc_name,
197  const char *dsc_level,
198  const char *var_name,
199  DBResult **result);
200 
201 #define DsVarAttVar(dbres,row) DB_RESULT(dbres,row,0)
202 #define DsVarAttName(dbres,row) DB_RESULT(dbres,row,1)
203 #define DsVarAttType(dbres,row) DB_RESULT(dbres,row,2)
204 #define DsVarAttValue(dbres,row) DB_RESULT(dbres,row,3)
205 
206 /*******************************************************************************
207 * Time Varying Datastream Variable Attributes
208 */
209 
210 DBStatus dodog_get_ds_var_att_times(
211  DBConn *dbconn,
212  const char *site,
213  const char *facility,
214  const char *dsc_name,
215  const char *dsc_level,
216  const char *var_name,
217  const char *att_name,
218  DBResult **result);
219 
220 #define DsVarAttTimeVar(dbres,row) DB_RESULT(dbres,row,0)
221 #define DsVarAttTimeName(dbres,row) DB_RESULT(dbres,row,1)
222 #define DsVarAttTimeTime(dbres,row) DB_RESULT(dbres,row,2)
223 
224 
225 DBStatus dodog_get_ds_var_time_atts(
226  DBConn *dbconn,
227  const char *site,
228  const char *facility,
229  const char *dsc_name,
230  const char *dsc_level,
231  const char *var_name,
232  time_t att_time,
233  DBResult **result);
234 
235 #define DsVarTimeAttVar(dbres,row) DB_RESULT(dbres,row,0)
236 #define DsVarTimeAttName(dbres,row) DB_RESULT(dbres,row,1)
237 #define DsVarTimeAttTime(dbres,row) DB_RESULT(dbres,row,2)
238 #define DsVarTimeAttType(dbres,row) DB_RESULT(dbres,row,3)
239 #define DsVarTimeAttValue(dbres,row) DB_RESULT(dbres,row,4)
240 
241 /*******************************************************************************
242 * Datastream Properties
243 */
244 
245 DBStatus dodog_get_ds_properties(
246  DBConn *dbconn,
247  const char *dsc_name,
248  const char *dsc_level,
249  const char *site,
250  const char *facility,
251  const char *var_name,
252  const char *prop_name,
253  DBResult **result);
254 
255 #define DsPropDscName(dbres,row) DB_RESULT(dbres,row,0)
256 #define DsPropDscLevel(dbres,row) DB_RESULT(dbres,row,1)
257 #define DsPropSite(dbres,row) DB_RESULT(dbres,row,2)
258 #define DsPropFac(dbres,row) DB_RESULT(dbres,row,3)
259 #define DsPropVar(dbres,row) DB_RESULT(dbres,row,4)
260 #define DsPropName(dbres,row) DB_RESULT(dbres,row,5)
261 #define DsPropTime(dbres,row) DB_RESULT(dbres,row,6)
262 #define DsPropValue(dbres,row) DB_RESULT(dbres,row,7)
263 
264 /*@}*/
265 
266 #endif /* _DBOG_DOD_H_ */