quaere.h
Go to the documentation of this file.
1 // File: $Id$
2 // Author: John Wu <John.Wu at ACM.org>
3 // Copyright (c) 2010-2016 the Regents of the University of California
4 #ifndef IBIS_QUAERE_H
5 #define IBIS_QUAERE_H
6 
13 #include "part.h" // ibis::part
14 
15 namespace ibis {
16  class quaere; // forward definition
17 } // namespace ibis
18 
35 class FASTBIT_CXX_DLLSPEC ibis::quaere {
36 public:
37  static quaere* create(const char* sel, const char* from, const char* where);
38  static quaere* create(const char* sel, const char* from, const char* where,
39  const ibis::partList& prts);
40  static quaere* create(const ibis::part* partr, const ibis::part* parts,
41  const char* colname, const char* condr = 0,
42  const char* conds = 0, const char* sel = 0);
43 
47  virtual void roughCount(uint64_t& nmin, uint64_t& nmax) const = 0;
51  virtual int64_t count() const = 0;
52 
61  virtual table* select() const = 0;
65  virtual table* select(const char*) const = 0;
71  virtual ibis::table*
72  select(const ibis::table::stringArray& colnames) const = 0;
73 
74  virtual ~quaere() {};
75 
76 protected:
77  quaere() {}
78 
79 private:
80  quaere(const quaere&); // no copying
81  quaere& operator=(const quaere&); // no assignment
82 }; // class ibis::quaere
83 
84 namespace ibis {
85  ibis::part* findDataset(const char*);
86  ibis::part* findDataset(const char*, const ibis::partList&);
87 }
88 #endif
ibis::part * findDataset(const char *)
Find a dataset with the given name.
Definition: quaere.cpp:1066
The current implementation of FastBit is code named IBIS; most data structures and functions are in t...
Definition: bord.h:16
static quaere * create(const char *sel, const char *from, const char *where)
Create a query object using the global datasets.
Definition: quaere.cpp:13
The abstract table class.
Definition: table.h:77
The class ibis::part represents a partition of a relational table.
Definition: part.h:27
virtual table * select() const =0
Produce a projection of the joint table.
virtual void roughCount(uint64_t &nmin, uint64_t &nmax) const =0
Provide an estimate of the number of hits.
An abstract query interface.
Definition: quaere.h:35
virtual int64_t count() const =0
Compute the number of results.
quaere()
Default constructor. Only used by derived classes.
Definition: quaere.h:77
Define the class ibis::part.

Make It A Bit Faster
Contact us
Disclaimers
FastBit source code
FastBit mailing list archive