hamsterdb Embedded Database  2.1.7
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Attributes | Friends
hamsterdb::db Class Reference

#include <hamsterdb.hpp>

Public Member Functions

 db ()
 
 ~db ()
 
dboperator= (const db &other)
 
ham_status_t get_error ()
 
void set_compare_func (ham_compare_func_t foo)
 
record find (txn *t, key *k, ham_u32_t flags=0)
 
recordfind (txn *t, key *k, record *r, ham_u32_t flags=0)
 
record find (key *k, ham_u32_t flags=0)
 
void insert (txn *t, key *k, record *r, ham_u32_t flags=0)
 
void insert (key *k, record *r, ham_u32_t flags=0)
 
void erase (key *k, ham_u32_t flags=0)
 
void erase (txn *t, key *k, ham_u32_t flags=0)
 
ham_u64_t get_key_count (ham_txn_t *txn=0, ham_u32_t flags=0)
 
void get_parameters (ham_parameter_t *param)
 
void close (ham_u32_t flags=0)
 
ham_db_tget_handle ()
 

Static Public Member Functions

static void set_errhandler (ham_errhandler_fun f)
 
static void get_version (ham_u32_t *major, ham_u32_t *minor, ham_u32_t *revision)
 
static void get_license (const char **licensee, const char **product)
 

Protected Member Functions

 db (ham_db_t *db)
 

Private Attributes

ham_db_tm_db
 

Friends

class env
 

Detailed Description

A Database class.

This class wraps the ham_db_t Database handles.

Definition at line 276 of file hamsterdb.hpp.

Constructor & Destructor Documentation

hamsterdb::db::db ( )
inline

Constructor

Definition at line 295 of file hamsterdb.hpp.

hamsterdb::db::~db ( )
inline

Destructor - automatically closes the Database, if necessary.

Definition at line 300 of file hamsterdb.hpp.

References close().

hamsterdb::db::db ( ham_db_t db)
inlineprotected

Definition at line 427 of file hamsterdb.hpp.

Member Function Documentation

void hamsterdb::db::close ( ham_u32_t  flags = 0)
inline

Closes the Database.

Definition at line 406 of file hamsterdb.hpp.

References error(), HAM_AUTO_CLEANUP, ham_db_close(), and m_db.

Referenced by operator=(), run_demo(), and ~db().

void hamsterdb::db::erase ( key k,
ham_u32_t  flags = 0 
)
inline

Erases a key/record pair.

Definition at line 376 of file hamsterdb.hpp.

Referenced by run_demo().

void hamsterdb::db::erase ( txn t,
key k,
ham_u32_t  flags = 0 
)
inline

Erases a key/record pair.

Definition at line 381 of file hamsterdb.hpp.

References error(), hamsterdb::key::get_handle(), hamsterdb::txn::get_handle(), ham_db_erase(), and m_db.

record hamsterdb::db::find ( txn t,
key k,
ham_u32_t  flags = 0 
)
inline

Finds a record by looking up the key.

Definition at line 333 of file hamsterdb.hpp.

References error(), hamsterdb::key::get_handle(), hamsterdb::record::get_handle(), hamsterdb::txn::get_handle(), ham_db_find(), and m_db.

Referenced by find(), and run_demo().

record& hamsterdb::db::find ( txn t,
key k,
record r,
ham_u32_t  flags = 0 
)
inline

Finds a record by looking up the key.

Definition at line 345 of file hamsterdb.hpp.

References error(), hamsterdb::key::get_handle(), hamsterdb::record::get_handle(), hamsterdb::txn::get_handle(), ham_db_find(), and m_db.

record hamsterdb::db::find ( key k,
ham_u32_t  flags = 0 
)
inline

Finds a record by looking up the key.

Definition at line 356 of file hamsterdb.hpp.

References find().

ham_status_t hamsterdb::db::get_error ( )
inline

Returns the last Database error.

Definition at line 321 of file hamsterdb.hpp.

References ham_db_get_error(), and m_db.

ham_db_t* hamsterdb::db::get_handle ( )
inline

Returns a pointer to the internal ham_db_t structure.

Definition at line 419 of file hamsterdb.hpp.

References m_db.

Referenced by hamsterdb::cursor::create().

ham_u64_t hamsterdb::db::get_key_count ( ham_txn_t txn = 0,
ham_u32_t  flags = 0 
)
inline

Returns number of items in the Database.

Definition at line 390 of file hamsterdb.hpp.

References error(), ham_db_get_key_count(), and m_db.

static void hamsterdb::db::get_license ( const char **  licensee,
const char **  product 
)
inlinestatic

Retrieves hamsterdb library license information.

Definition at line 290 of file hamsterdb.hpp.

References ham_get_license().

void hamsterdb::db::get_parameters ( ham_parameter_t param)
inline

Retrieves Database parameters.

Definition at line 399 of file hamsterdb.hpp.

References error(), ham_db_get_parameters(), and m_db.

static void hamsterdb::db::get_version ( ham_u32_t major,
ham_u32_t minor,
ham_u32_t revision 
)
inlinestatic

Retrieves the hamsterdb library version.

Definition at line 284 of file hamsterdb.hpp.

References ham_get_version().

void hamsterdb::db::insert ( txn t,
key k,
record r,
ham_u32_t  flags = 0 
)
inline

Inserts a key/record pair.

Definition at line 361 of file hamsterdb.hpp.

References error(), hamsterdb::key::get_handle(), hamsterdb::record::get_handle(), hamsterdb::txn::get_handle(), ham_db_insert(), and m_db.

Referenced by insert(), and run_demo().

void hamsterdb::db::insert ( key k,
record r,
ham_u32_t  flags = 0 
)
inline

Inserts a key/record pair.

Definition at line 371 of file hamsterdb.hpp.

References insert().

db& hamsterdb::db::operator= ( const db other)
inline

Assignment operator.

Important! This operator transfers the ownership of the Database handle.

Definition at line 310 of file hamsterdb.hpp.

References close(), and m_db.

void hamsterdb::db::set_compare_func ( ham_compare_func_t  foo)
inline

Sets the comparison function.

Definition at line 326 of file hamsterdb.hpp.

References error(), ham_db_set_compare_func(), and m_db.

static void hamsterdb::db::set_errhandler ( ham_errhandler_fun  f)
inlinestatic

Set error handler function.

Definition at line 279 of file hamsterdb.hpp.

References ham_set_errhandler().

Friends And Related Function Documentation

friend class env
friend

Definition at line 424 of file hamsterdb.hpp.

Field Documentation

ham_db_t* hamsterdb::db::m_db
private

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