Bitcoin Core  22.99.0
P2P Digital Currency
Classes | Namespaces | Enumerations | Functions
db.h File Reference
#include <clientversion.h>
#include <fs.h>
#include <streams.h>
#include <support/allocators/secure.h>
#include <atomic>
#include <memory>
#include <optional>
#include <string>
Include dependency graph for db.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  wallet::DatabaseBatch
 RAII class that provides access to a WalletDatabase. More...
 
class  wallet::WalletDatabase
 An instance of this class represents one database. More...
 
class  wallet::DummyBatch
 RAII class that provides access to a DummyDatabase. More...
 
class  wallet::DummyDatabase
 A dummy WalletDatabase that does nothing and never fails. More...
 
struct  wallet::DatabaseOptions
 

Namespaces

 wallet
 

Enumerations

enum  wallet::DatabaseFormat { wallet::DatabaseFormat::BERKELEY, wallet::DatabaseFormat::SQLITE }
 
enum  wallet::DatabaseStatus {
  wallet::DatabaseStatus::SUCCESS, wallet::DatabaseStatus::FAILED_BAD_PATH, wallet::DatabaseStatus::FAILED_BAD_FORMAT, wallet::DatabaseStatus::FAILED_ALREADY_LOADED,
  wallet::DatabaseStatus::FAILED_ALREADY_EXISTS, wallet::DatabaseStatus::FAILED_NOT_FOUND, wallet::DatabaseStatus::FAILED_CREATE, wallet::DatabaseStatus::FAILED_LOAD,
  wallet::DatabaseStatus::FAILED_VERIFY, wallet::DatabaseStatus::FAILED_ENCRYPT, wallet::DatabaseStatus::FAILED_INVALID_BACKUP_FILE
}
 

Functions

void wallet::SplitWalletPath (const fs::path &wallet_path, fs::path &env_directory, std::string &database_filename)
 
std::vector< fs::pathwallet::ListDatabases (const fs::path &path)
 Recursively list database paths in directory. More...
 
std::unique_ptr< WalletDatabase > wallet::MakeDatabase (const fs::path &path, const DatabaseOptions &options, DatabaseStatus &status, bilingual_str &error)
 
fs::path wallet::BDBDataFile (const fs::path &wallet_path)
 
fs::path wallet::SQLiteDataFile (const fs::path &path)
 
bool wallet::IsBDBFile (const fs::path &path)
 
bool wallet::IsSQLiteFile (const fs::path &path)