Use gitignore based on old cvsignore.
[yazpp-moved-to-github.git] / include / yazpp / z-query.h
1 /*
2  * Copyright (c) 1998-2005, Index Data.
3  * See the file LICENSE for details.
4  * 
5  * $Id: z-query.h,v 1.3 2007-03-20 07:54:11 adam Exp $
6  */
7
8 #ifndef YAZPP_Z_QUERY_INCLUDED
9 #define YAZPP_Z_QUERY_INCLUDED
10
11 #include <yaz/proto.h>
12 #include <yazpp/query.h>
13
14 namespace yazpp_1 {
15 /** Z39.50 Query
16     RPN, etc.
17 */
18 class YAZ_EXPORT Yaz_Z_Query : public Yaz_Query {
19  public:
20     /// Construct query
21     Yaz_Z_Query();
22     /// Copy construct
23     Yaz_Z_Query(const Yaz_Z_Query &q);
24     /// Delete Query
25     virtual ~Yaz_Z_Query();
26     /// Set RPN
27     int set_rpn (const char *rpn);
28     /// Set Z Query
29     void set_Z_Query (Z_Query *z_query);
30     /// Get Z Query
31     Z_Query *get_Z_Query ();
32     /// print query
33     void print(char *str, size_t len);
34     /// match query
35     int match(const Yaz_Z_Query *other);
36     /// Copy
37     Yaz_Z_Query &operator=(const Yaz_Z_Query &);
38     /// Assign RPN string to it
39     Yaz_Z_Query& operator=(const char *rpn);
40  private:
41     char *m_buf;
42     int m_len;
43     ODR odr_decode;
44     ODR odr_encode;
45     ODR odr_print;
46 };
47 };
48 #endif
49 /*
50  * Local variables:
51  * c-basic-offset: 4
52  * indent-tabs-mode: nil
53  * End:
54  * vim: shiftwidth=4 tabstop=8 expandtab
55  */
56