NIST Biometric Evaluation Framework
Software components for biometric technology evaluations
be_io_listrecstore.h
Go to the documentation of this file.
1
11#ifndef __BE_IO_LISTRECSTORE_H__
12#define __BE_IO_LISTRECSTORE_H__
13
14#include <memory.h>
15#include <be_io_recordstore.h>
16
17namespace BiometricEvaluation
18{
19 namespace IO
20 {
52 public:
55 const std::string &pathname);
56
59
60 /*
61 * Implementation of the RecordStore interface.
62 */
63
64 /*
65 * We need the base class insert() and replace() as well
66 * otherwise, they are hidden by the declarations below.
67 */
70
71 void
73 const std::string &key,
74 const void *const data,
75 const uint64_t size)
76 override;
77
78 void
80 const std::string &key)
81 override;
82
85 const std::string &key) const override;
86
87 void
89 const std::string &key,
90 const void *const data,
91 const uint64_t size) override final;
92
93 uint64_t
95 const std::string &key) const override;
96
97 void
99 const std::string &key) const override;
100
101 void
102 sync() const override;
103
106 int cursor = BE_RECSTORE_SEQ_NEXT)
107 override;
108
109 std::string
111 int cursor = BE_RECSTORE_SEQ_NEXT)
112 override;
113
114 void
116 const std::string &key)
117 override;
118
119 void
121 const std::string &pathname)
122 override;
123
124 uint64_t
126 override;
127
128 unsigned int getCount() const override;
129 std::string getPathname() const override;
130 std::string getDescription() const override;
132 const std::string &description) override;
133
134 private:
135 class Impl;
136 std::unique_ptr<ListRecordStore::Impl> pimpl;
137 };
138 }
139}
140
141#endif /* __BE_IO_LISTRECSTORE_H__ */
IO::RecordStore that reads a list of keys from a text file, and retrieves the data from another IO::R...
std::string getPathname() const override
Return the path name of the RecordStore.
uint64_t getSpaceUsed() const override
Obtain real storage utilization.
void remove(const std::string &key) override
Remove a record from the store.
uint64_t length(const std::string &key) const override
Return the length of a record.
void replace(const std::string &key, const void *const data, const uint64_t size) override final
Replace a complete record in a RecordStore.
void sync() const override
Synchronize the entire record store to persistent storage.
std::string sequenceKey(int cursor=BE_RECSTORE_SEQ_NEXT) override
Sequence through a RecordStore, returning the key.
std::string getDescription() const override
Obtain a textual description of the RecordStore.
void insert(const std::string &key, const void *const data, const uint64_t size) override
Insert a record into the store.
void changeDescription(const std::string &description) override
Change the description of the RecordStore.
RecordStore::Record sequence(int cursor=BE_RECSTORE_SEQ_NEXT) override
Sequence through a RecordStore, returning the key/data pairs.
unsigned int getCount() const override
Obtain the number of items in the RecordStore.
void move(const std::string &pathname) override
Move the RecordStore.
Memory::uint8Array read(const std::string &key) const override
Read a complete record from a store.
void setCursorAtKey(const std::string &key) override
Set the sequence cursor to an arbitrary position within the RecordStore, starting at key.
void flush(const std::string &key) const override
Commit the record's data to storage.
ListRecordStore(const std::string &pathname)
Constructor, always opening read-only.
A class to represent a data storage mechanism.
virtual void insert(const std::string &key, const Memory::uint8Array &data)
Insert a record into the store.
static const int BE_RECSTORE_SEQ_NEXT
Tell sequence to sequence from current position.
virtual void replace(const std::string &key, const Memory::uint8Array &data)
Replace a complete record in a RecordStore.
This software was developed at the National Institute of Standards and Technology (NIST) by employees...