Templatetize Storage and friends
[Versie.git] / lib / BerkelyDB / QueueStorage.h
blob571c6ed02c3aefb30adf6259eafa9ff8c22e5a46
1 #ifndef berkelydb_queuestorage_h
2 #define berkelydb_queuestorage_h
4 #include "Details/prologue.h"
5 #include "Storage.h"
7 namespace BerkelyDB
9 class Database;
10 class Environment;
11 template < typename DataType >
12 class QueueStorageOperator;
13 template < typename DataType >
14 class QueueStorageConstOperator;
15 template < typename DataType >
16 class QueueStorageCursor;
18 // QueueStorage implemented on top of the Storage class, but this is inefficient
19 // and should be changed to a non-tree BerkelyDB container.
20 template < typename DataType >
21 class QueueStorage : private Storage< std::string, DataType >
23 public:
24 typedef QueueStorageCursor< DataType > Cursor; // Defined in QueueStorage-Cursor.h
25 typedef QueueStorageConstOperator< DataType > ConstOperator; // Defined in QueueStorage-Operator.h
26 typedef QueueStorageOperator< DataType > Operator; // Defined in QueueStorage-Operator.h
28 QueueStorage(Environment & env, const std::string & name)
29 : Storage< DataType, DataType >(env, name + ".queue")
30 { /* no-op */ }
32 ~QueueStorage()
33 { /* no-op */ }
35 using Storage::getEnvironment;
39 #endif