libdballe  7.7
simple.h
1 #ifndef FDBA_SIMPLE_H
2 #define FDBA_SIMPLE_H
3 
4 #include <dballe/file.h>
5 #include <dballe/types.h>
6 
7 namespace dballe {
8 namespace fortran {
9 
10 struct API
11 {
12  static const signed char missing_byte;
13  static const int missing_int;
14  static const float missing_float;
15  static const double missing_double;
16 
17  virtual ~API() {}
18 
33  virtual void scopa(const char* repinfofile = 0) = 0;
34 
40  virtual void remove_all() = 0;
41 
63  virtual int enqi(const char* param) = 0;
64 
80  virtual signed char enqb(const char* param) = 0;
81 
97  virtual float enqr(const char* param) = 0;
98 
114  virtual double enqd(const char* param) = 0;
115 
131  virtual const char* enqc(const char* param) = 0;
132 
155  virtual void seti(const char* param, int value) = 0;
156 
172  virtual void setb(const char* param, signed char value) = 0;
173 
189  virtual void setr(const char* param, float value) = 0;
190 
206  virtual void setd(const char* param, double value) = 0;
207 
223  virtual void setc(const char* param, const char* value) = 0;
224 
233  virtual void setcontextana() = 0;
234 
249  virtual void enqlevel(int& ltype1, int& l1, int& ltype2, int& l2) = 0;
250 
265  virtual void setlevel(int ltype1, int l1, int ltype2, int l2) = 0;
266 
281  virtual void enqtimerange(int& ptype, int& p1, int& p2) = 0;
282 
297  virtual void settimerange(int ptype, int p1, int p2) = 0;
298 
319  virtual void enqdate(int& year, int& month, int& day, int& hour, int& min, int& sec) = 0;
320 
341  virtual void setdate(int year, int month, int day, int hour, int min, int sec) = 0;
342 
363  virtual void setdatemin(int year, int month, int day, int hour, int min, int sec) = 0;
364 
385  virtual void setdatemax(int year, int month, int day, int hour, int min, int sec) = 0;
386 
402  virtual void unset(const char* param) = 0;
403 
410  virtual void unsetall() = 0;
411 
418  virtual void unsetb() = 0;
419 
433  virtual int quantesono() = 0;
434 
447  virtual void elencamele() = 0;
448 
461  virtual int voglioquesto() = 0;
462 
476  virtual const char* dammelo() = 0;
477 
496  virtual void prendilo() = 0;
497 
508  virtual void dimenticami() = 0;
509 
520  virtual int voglioancora() = 0;
521 
532  virtual const char* ancora() = 0;
533 
560  virtual void critica() = 0;
561 
581  virtual void scusa() = 0;
582 
601  virtual void messages_open_input(const char* filename, const char* mode, File::Encoding format, bool simplified=true) = 0;
602 
615  virtual void messages_open_output(const char* filename, const char* mode, File::Encoding format) = 0;
616 
626  virtual bool messages_read_next() = 0;
627 
631  virtual void messages_write_next(const char* template_name=0) = 0;
632 
633  virtual const char* spiegal(int ltype1, int l1, int ltype2, int l2) = 0;
634 
635  virtual const char* spiegat(int ptype, int p1, int p2) = 0;
636 
637  virtual const char* spiegab(const char* varcode, const char* value) = 0;
638 
639  // Function used for test purposes only
640  virtual void test_input_to_output() = 0;
641 };
642 
643 }
644 }
645 
646 /* vim:set ts=4 sw=4: */
647 #endif
Encoding
Supported encodings.
Definition: file.h:20
virtual void enqtimerange(int &ptype, int &p1, int &p2)=0
Shortcut function to read time range data.
virtual const char * enqc(const char *param)=0
Read one character value from the output record.
Common base types used by most of DB-All.e code.
virtual void elencamele()=0
Iterate through the anagraphical data.
virtual void remove_all()=0
Remove all data from the database.
virtual void setlevel(int ltype1, int l1, int ltype2, int l2)=0
Shortcut function to set level data.
virtual void setdate(int year, int month, int day, int hour, int min, int sec)=0
Shortcut function to set date information.
virtual void setcontextana()=0
Shortcut function to set query parameters to the anagraphical context.
virtual const char * dammelo()=0
Iterate through the query results data.
virtual const char * ancora()=0
Retrieve QC informations from the last variable returned by dammelo().
virtual void setdatemin(int year, int month, int day, int hour, int min, int sec)=0
Shortcut function to set minimum date for a query.
virtual int enqi(const char *param)=0
Read one integer value from the output record.
virtual void unset(const char *param)=0
Remove one parameter from the input record.
virtual void setc(const char *param, const char *value)=0
Set one character value into the input record.
virtual void dimenticami()=0
Remove all selected items from the database.
Copyright (C) 2008–2010 ARPA-SIM urpsim@smr.arpa.emr.it
Definition: cmdline.h:17
virtual void enqdate(int &year, int &month, int &day, int &hour, int &min, int &sec)=0
Shortcut function to read date information.
Definition: simple.h:10
virtual int quantesono()=0
Count the number of elements in the anagraphical storage, and start a new anagraphical query...
virtual void setd(const char *param, double value)=0
Set one real*8 value into the input record.
virtual int voglioancora()=0
Retrieve QC informations from the last variable returned by dammelo().
virtual void messages_write_next(const char *template_name=0)=0
Export the currently selected data to the output message.
virtual void messages_open_input(const char *filename, const char *mode, File::Encoding format, bool simplified=true)=0
Open a BUFR/CREX/AOF file for reading.
virtual void settimerange(int ptype, int p1, int p2)=0
Shortcut function to set time range data.
virtual void prendilo()=0
Insert a new item in the database.
virtual void setdatemax(int year, int month, int day, int hour, int min, int sec)=0
Shortcut function to set maximum date for a query.
virtual signed char enqb(const char *param)=0
Read one byte value from the output record.
virtual void unsetb()=0
Remove all B* parameters from the input record.
virtual int voglioquesto()=0
Submit a query to the database.
virtual void messages_open_output(const char *filename, const char *mode, File::Encoding format)=0
Open a BUFR/CREX/AOF file for writing.
virtual bool messages_read_next()=0
Read the next message and import it in the database.
virtual void setb(const char *param, signed char value)=0
Set one byte value into the input record.
virtual void enqlevel(int &ltype1, int &l1, int &ltype2, int &l2)=0
Shortcut function to read level data.
virtual float enqr(const char *param)=0
Read one real value from the output record.
virtual void scopa(const char *repinfofile=0)=0
Reset the database contents, loading default report informations from a file.
virtual void unsetall()=0
Remove all parameters from the input record.
virtual void setr(const char *param, float value)=0
Set one real value into the input record.
virtual void scusa()=0
Remove QC informations for a variable of the current record.
virtual void seti(const char *param, int value)=0
Set one integer value into the input record.
virtual void critica()=0
Insert new QC informations for a variable of the current record.
virtual double enqd(const char *param)=0
Read one real*8 value from the output record.