1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96
| #include <stddef.h> // for size_t
namespace ZOOM {
// Forward declarations for type names.
class query;
class resultSet;
class record;
const char *option (const char *key);
const char *option (const char *key, const char *val);
int errcode ();
char *errmsg ();
char *addinfo ();
class connection {
public:
connection (const char *hostname, int portnum);
~connection ();
const char *option (const char *key) const;
const char *option (const char *key, const char *val);
};
class query {
// pure virtual class: derive concrete subclasses from it.
public:
virtual ~query ();
};
class prefixQuery : public query {
public:
prefixQuery (const char *pqn);
~prefixQuery ();
};
class CCLQuery : public query {
public:
CCLQuery (const char *ccl, void *qualset);
~CCLQuery ();
};
class resultSet {
public:
resultSet (connection &c, const query &q);
~resultSet ();
const char *option (const char *key) const;
const char *option (const char *key, const char *val);
size_t size () const;
const record *getRecord (size_t i) const;
};
class record {
public:
~record ();
enum syntax {
UNKNOWN, GRS1, SUTRS, USMARC, UKMARC, XML
};
record *clone () const;
syntax recsyn () const;
const char *render () const;
const char *rawdata () const;
};
class exception {
public:
exception (int code);
int errcode () const;
const char *errmsg () const;
};
class systemException: public exception {
public:
systemException ();
int errcode () const;
const char *errmsg () const;
};
class bib1Exception: public exception {
public:
bib1Exception (int errcode, const char *addinfo);
int errcode () const;
const char *errmsg () const;
const char *addinfo () const;
};
class queryException: public exception {
public:
enum {
PREFIX = 1,
CCL = 2
};
queryException (int qtype, const char *source);
int errcode () const;
const char *errmsg () const;
const char *addinfo () const;
};
} |
Partager