GLnexus
Scalable datastore for population genome sequencing, with on-demand joint genotyping
 All Classes Functions Variables
Public Member Functions | List of all members
GLnexus::KeyValue::Reader Class Referenceabstract

A DB snapshot providing consistent multiple reads if possible. Thread-safe. More...

#include <KeyValue.h>

Inheritance diagram for GLnexus::KeyValue::Reader:
GLnexus::KeyValue::DB GLnexus::RocksKeyValue::Reader GLnexus::RocksKeyValue::DB

Public Member Functions

virtual Status get (CollectionHandle coll, const std::string &key, std::string &value) const =0
 
virtual Status iterator (CollectionHandle coll, const std::string &key, std::unique_ptr< Iterator > &it) const =0
 

Detailed Description

A DB snapshot providing consistent multiple reads if possible. Thread-safe.

Member Function Documentation

virtual Status GLnexus::KeyValue::Reader::get ( CollectionHandle  coll,
const std::string &  key,
std::string &  value 
) const
pure virtual

Get the value corresponding to the key and return OK. Return NotFound if no corresponding record exists in the collection, or any error code

Implemented in GLnexus::RocksKeyValue::DB, GLnexus::RocksKeyValue::Reader, and GLnexus::KeyValue::DB.

virtual Status GLnexus::KeyValue::Reader::iterator ( CollectionHandle  coll,
const std::string &  key,
std::unique_ptr< Iterator > &  it 
) const
pure virtual

Create an iterator positioned at the first key equal to or greater than the given one. If key is empty then position at the beginning of the collection.

If there are no extant keys equal to or greater than the given one, the return status will be OK but it->valid() will be false.

Implemented in GLnexus::KeyValue::DB.


The documentation for this class was generated from the following file: