1 |
// -*- Mode: C++ -*- |
2 |
|
3 |
// GiSTcursor.h |
4 |
// |
5 |
// Copyright (c) 1996, Regents of the University of California |
6 |
// $Header: /usr/local/devel/GiST/libGiST/libGiST/GiSTcursor.h,v 1.1.1.1 1996/08/06 23:47:21 jmh Exp $ |
7 |
|
8 |
#ifndef GISTCURSOR_H |
9 |
#define GISTCURSOR_H |
10 |
|
11 |
#include "GiSTdefs.h" |
12 |
#include "GiSTentry.h" |
13 |
#include "GiSTpredicate.h" |
14 |
#include "GiSTlist.h" |
15 |
#include "GiSTpath.h" |
16 |
|
17 |
class GiST; |
18 |
|
19 |
class GiSTcursor: public GiSTobject { |
20 |
public: |
21 |
GiSTcursor(const GiST& gist, const GiSTpredicate& query); |
22 |
GiSTentry *Next(); |
23 |
GiSTobjid IsA() const { return GISTCURSOR_CLASS; } |
24 |
~GiSTcursor(); |
25 |
const GiSTpath& Path() const;
|
26 |
|
27 |
private: |
28 |
const GiST& gist; |
29 |
GiSTpath path; |
30 |
GiSTlist<GiSTentry*> stack; |
31 |
int first; |
32 |
GiSTpredicate *query; |
33 |
int lastlevel; |
34 |
}; |
35 |
|
36 |
#endif |