threaddb  1.0
A file mapped memory container extension
Public Member Functions | List of all members
tdb::database Class Reference

C++ wrapper class of the threadDB file mapped memory container extension. More...

#include <threaddbCPP.h>

Public Member Functions

 database (size_t PackageSize_p, size_t PackageCacheLimit_p)
 C++ wrapper to construct a threadDB database object see ThreadDB_Create. More...
 
 database (const std::string &rIndexFileUTF8_p, size_t PackageCacheLimit_p)
 C++ wrapper to construct a threadDB database object from file see ThreadDB_Import. More...
 
 ~database ()
 C++ wrapper to destruct a threadDB database object see ThreadDB_Destroy. More...
 
const char * GetVersionInfo () const
 C++ wrapper to retrieve the version information of the current installation see ThreadDB_GetVersionInfo. More...
 
void Save (const char *pIndexFileUTF8_p)
 C++ wrapper to save the contents of a threadDB database see ThreadDB_Save. More...
 
const char * NewThread (const char *pDataFolder_p, size_t MaxFileSize_p=std::numeric_limits< size_t >::max())
 C++ wrapper to create and register a threadDB worker thread see ThreadDB_NewThread. More...
 
uint64_t NewPackage ()
 C++ wrapper to create and register a threadDB data package see ThreadDB_NewPackage. More...
 
size_t GetPackageCount () const
 C++ wrapper to retrieve the number of registered packages see ThreadDB_GetPackageCount. More...
 
size_t GetFileCount () const
 C++ wrapper to retrieve the number of registered temporary database files see ThreadDB_GetFileCount. More...
 
const char * GetDatabaseFilename (size_t FileIndex_p) const
 C++ wrapper to derive the name of the temporary database file with index FileIndex_p ThreadDB_GetDatabaseFileName. More...
 
void RelocateFileTo (size_t FileID_p, const char *pFilePathUTF8_p, threadDB_RelocationType RelocationType_p) const
 C++ wrapper to move a file to a different location or disc see ThreadDB_RelocateFileTo. More...
 
void Store (uint64_t Package_p, size_t Size_p, const char pData_p[], threadDB_ItemInfo *pItemHandle_p=0)
 C++ wrapper to store a data item in the selected package see ThreadDB_Store. More...
 
void Synchronize ()
 C++ wrapper to synchronize the package buffers prior reading see ThreadDB_Synchronize. More...
 
tdb::ReadInfo Open (size_t Package_p)
 C++ wrapper to open a package for stream reading see ThreadDB_Open. More...
 
size_t Recover (size_t Size_p, char pData_p[], tdb::ReadInfo &rReadInfo_p)
 C++ wrapper for stream reading of data items see ThreadDB_Recover. More...
 
threadDB_ItemInfo Recover (size_t Size_p, char pData_p[], const threadDB_ItemInfo &rItemHandle_p)
 C++ wrapper for random reading of data items see ThreadDB_RecoverItem. More...
 
void Replace (size_t Size_p, const char pData_p[], threadDB_ItemInfo &rItemHandle_p)
 C++ wrapper for replacing the contents of a data item see ThreadDB_Replace. More...
 

Detailed Description

C++ wrapper class of the threadDB file mapped memory container extension.

Constructor & Destructor Documentation

◆ database() [1/2]

tdb::database::database ( size_t  PackageSize_p,
size_t  PackageCacheLimit_p 
)
inline

C++ wrapper to construct a threadDB database object see ThreadDB_Create.

◆ database() [2/2]

tdb::database::database ( const std::string &  rIndexFileUTF8_p,
size_t  PackageCacheLimit_p 
)
inline

C++ wrapper to construct a threadDB database object from file see ThreadDB_Import.

◆ ~database()

tdb::database::~database ( )
inline

C++ wrapper to destruct a threadDB database object see ThreadDB_Destroy.

Member Function Documentation

◆ GetDatabaseFilename()

const char* tdb::database::GetDatabaseFilename ( size_t  FileIndex_p) const
inline

C++ wrapper to derive the name of the temporary database file with index FileIndex_p ThreadDB_GetDatabaseFileName.

◆ GetFileCount()

size_t tdb::database::GetFileCount ( ) const
inline

C++ wrapper to retrieve the number of registered temporary database files see ThreadDB_GetFileCount.

◆ GetPackageCount()

size_t tdb::database::GetPackageCount ( ) const
inline

C++ wrapper to retrieve the number of registered packages see ThreadDB_GetPackageCount.

◆ GetVersionInfo()

const char* tdb::database::GetVersionInfo ( ) const
inline

C++ wrapper to retrieve the version information of the current installation see ThreadDB_GetVersionInfo.

◆ NewPackage()

uint64_t tdb::database::NewPackage ( )
inline

C++ wrapper to create and register a threadDB data package see ThreadDB_NewPackage.

◆ NewThread()

const char* tdb::database::NewThread ( const char *  pDataFolder_p,
size_t  MaxFileSize_p = std::numeric_limits<size_t>::max() 
)
inline

C++ wrapper to create and register a threadDB worker thread see ThreadDB_NewThread.

◆ Open()

tdb::ReadInfo tdb::database::Open ( size_t  Package_p)
inline

C++ wrapper to open a package for stream reading see ThreadDB_Open.

return The threadDB_ReadInfo handle.

◆ Recover() [1/2]

threadDB_ItemInfo tdb::database::Recover ( size_t  Size_p,
char  pData_p[],
const threadDB_ItemInfo rItemHandle_p 
)
inline

C++ wrapper for random reading of data items see ThreadDB_RecoverItem.

returns The threadDB_ItemInfo handle.

◆ Recover() [2/2]

size_t tdb::database::Recover ( size_t  Size_p,
char  pData_p[],
tdb::ReadInfo rReadInfo_p 
)
inline

C++ wrapper for stream reading of data items see ThreadDB_Recover.

returns The number of read bytes.

◆ RelocateFileTo()

void tdb::database::RelocateFileTo ( size_t  FileID_p,
const char *  pFilePathUTF8_p,
threadDB_RelocationType  RelocationType_p 
) const
inline

C++ wrapper to move a file to a different location or disc see ThreadDB_RelocateFileTo.

◆ Replace()

void tdb::database::Replace ( size_t  Size_p,
const char  pData_p[],
threadDB_ItemInfo rItemHandle_p 
)
inline

C++ wrapper for replacing the contents of a data item see ThreadDB_Replace.

◆ Save()

void tdb::database::Save ( const char *  pIndexFileUTF8_p)
inline

C++ wrapper to save the contents of a threadDB database see ThreadDB_Save.

◆ Store()

void tdb::database::Store ( uint64_t  Package_p,
size_t  Size_p,
const char  pData_p[],
threadDB_ItemInfo pItemHandle_p = 0 
)
inline

C++ wrapper to store a data item in the selected package see ThreadDB_Store.

◆ Synchronize()

void tdb::database::Synchronize ( )
inline

C++ wrapper to synchronize the package buffers prior reading see ThreadDB_Synchronize.


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