libdballe  7.21
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 
15 struct API
16 {
17  static const signed char missing_byte;
18  static const int missing_int;
19  static const float missing_float;
20  static const double missing_double;
21 
22  virtual ~API() {}
23 
24  virtual void scopa(const char* repinfofile = 0) = 0;
25  virtual void remove_all() = 0;
26  virtual int enqi(const char* param) = 0;
27  virtual signed char enqb(const char* param) = 0;
28  virtual float enqr(const char* param) = 0;
29  virtual double enqd(const char* param) = 0;
30  virtual const char* enqc(const char* param) = 0;
31  virtual void seti(const char* param, int value) = 0;
32  virtual void setb(const char* param, signed char value) = 0;
33  virtual void setr(const char* param, float value) = 0;
34  virtual void setd(const char* param, double value) = 0;
35  virtual void setc(const char* param, const char* value) = 0;
36  virtual void setcontextana() = 0;
37  virtual void enqlevel(int& ltype1, int& l1, int& ltype2, int& l2) = 0;
38  virtual void setlevel(int ltype1, int l1, int ltype2, int l2) = 0;
39  virtual void enqtimerange(int& ptype, int& p1, int& p2) = 0;
40  virtual void settimerange(int ptype, int p1, int p2) = 0;
41  virtual void enqdate(int& year, int& month, int& day, int& hour, int& min, int& sec) = 0;
42  virtual void setdate(int year, int month, int day, int hour, int min, int sec) = 0;
43  virtual void setdatemin(int year, int month, int day, int hour, int min, int sec) = 0;
44  virtual void setdatemax(int year, int month, int day, int hour, int min, int sec) = 0;
45  virtual void unset(const char* param) = 0;
46  virtual void unsetall() = 0;
47  virtual void unsetb() = 0;
48  virtual int quantesono() = 0;
49  virtual void elencamele() = 0;
50  virtual int voglioquesto() = 0;
51  virtual const char* dammelo() = 0;
52  virtual void prendilo() = 0;
53  virtual void dimenticami() = 0;
54  virtual int voglioancora() = 0;
55  virtual const char* ancora() = 0;
56  virtual void critica() = 0;
57  virtual void scusa() = 0;
58  virtual void messages_open_input(const char* filename, const char* mode, File::Encoding format, bool simplified=true) = 0;
59  virtual void messages_open_output(const char* filename, const char* mode, File::Encoding format) = 0;
60  virtual bool messages_read_next() = 0;
61  virtual void messages_write_next(const char* template_name=0) = 0;
62  virtual const char* spiegal(int ltype1, int l1, int ltype2, int l2) = 0;
63  virtual const char* spiegat(int ptype, int p1, int p2) = 0;
64  virtual const char* spiegab(const char* varcode, const char* value) = 0;
65  virtual void fatto() = 0;
66 
67  // Function used for test purposes only
68  virtual void test_input_to_output() = 0;
69 };
70 
71 }
72 }
73 #endif
Encoding
Supported encodings.
Definition: file.h:20
Common base types used by most of DB-All.e code.
Copyright (C) 2008–2010 ARPA-SIM urpsim@smr.arpa.emr.it
Definition: cmdline.h:17
C++ implementation for the Fortran API.
Definition: simple.h:15