クラス O2DatDB

#include <O2DatDB.h>

すべてのメンバ一覧

Public メソッド

 O2DatDB (O2Logger *lgr, const wchar_t *filename)
 ~O2DatDB ()
bool create_table (void)
bool reindex (const char *target)
size_t select (const wchar_t *sql, SQLResultList &out)
bool select (O2DatRec &out)
bool select (O2DatRec &out, const hashT hash)
bool select (O2DatRec &out, const wchar_t *domain, const wchar_t *bbsname)
bool select (O2DatRecList &out)
bool select (O2DatRecList &out, const wchar_t *domain, const wchar_t *bbsname)
bool select (O2DatRec &out, const wchar_t *domain, const wchar_t *bbsname, const wchar_t *datname)
bool select (O2DatRecList &out, time_t publish_tt, size_t limit)
uint64 select_datcount (void)
uint64 select_datcount (wstrnummap &out)
uint64 select_totaldisksize (void)
uint64 select_publishcount (time_t publish_tt)
void update (O2DatRecList &in)
bool remove (const hashT &hash)
void AddUpdateQueue (O2DatRec &in)
void AddUpdateQueue (const hashT &hash)
void StartUpdateThread (void)
void StopUpdateThread (void)
void UpdateThread (void)

Static Public メソッド

static uint WINAPI StaticUpdateThread (void *data)

Protected メソッド

void log (sqlite3 *db)
bool bind (sqlite3 *db, sqlite3_stmt *stmt, int index, const uint64 num)
bool bind (sqlite3 *db, sqlite3_stmt *stmt, int index, const wchar_t *str)
bool bind (sqlite3 *db, sqlite3_stmt *stmt, int index, const wstring &str)
bool bind (sqlite3 *db, sqlite3_stmt *stmt, int index, const hashT &hash)
void get_columns (sqlite3_stmt *stmt, O2DatRec &rec)
void get_columns (sqlite3_stmt *stmt, wstrarray &cols)
void get_column_names (sqlite3_stmt *stmt, wstrarray &cols)

Protected 変数

O2LoggerLogger
wstring dbfilename
O2DatRecList UpdateQueue
Mutex UpdateQueueLock
HANDLE UpdateThreadHandle
bool UpdateThreadLoop
EventObject StopSignal


説明

O2DatDB.h54 行で定義されています。


コンストラクタとデストラクタ

O2DatDB::O2DatDB ( O2Logger lgr,
const wchar_t *  filename 
)

O2DatDB.cpp43 行で定義されています。

O2DatDB::~O2DatDB (  ) 

O2DatDB.cpp55 行で定義されています。


関数

void O2DatDB::log ( sqlite3 *  db  )  [protected]

O2DatDB.cpp63 行で定義されています。

bool O2DatDB::bind ( sqlite3 *  db,
sqlite3_stmt *  stmt,
int  index,
const uint64  num 
) [protected]

O2DatDB.cpp73 行で定義されています。

bool O2DatDB::bind ( sqlite3 *  db,
sqlite3_stmt *  stmt,
int  index,
const wchar_t *  str 
) [protected]

O2DatDB.cpp81 行で定義されています。

bool O2DatDB::bind ( sqlite3 *  db,
sqlite3_stmt *  stmt,
int  index,
const wstring str 
) [protected]

O2DatDB.cpp90 行で定義されています。

bool O2DatDB::bind ( sqlite3 *  db,
sqlite3_stmt *  stmt,
int  index,
const hashT hash 
) [protected]

O2DatDB.cpp99 行で定義されています。

void O2DatDB::get_columns ( sqlite3_stmt *  stmt,
O2DatRec rec 
) [protected]

O2DatDB.cpp108 行で定義されています。

void O2DatDB::get_columns ( sqlite3_stmt *  stmt,
wstrarray cols 
) [protected]

O2DatDB.cpp125 行で定義されています。

void O2DatDB::get_column_names ( sqlite3_stmt *  stmt,
wstrarray cols 
) [protected]

O2DatDB.cpp165 行で定義されています。

bool O2DatDB::create_table ( void   ) 

O2DatDB.cpp178 行で定義されています。

bool O2DatDB::reindex ( const char *  target  ) 

O2DatDB.cpp243 行で定義されています。

size_t O2DatDB::select ( const wchar_t *  sql,
SQLResultList out 
)

O2DatDB.cpp277 行で定義されています。

bool O2DatDB::select ( O2DatRec out  ) 

O2DatDB.cpp336 行で定義されています。

bool O2DatDB::select ( O2DatRec out,
const hashT  hash 
)

O2DatDB.cpp390 行で定義されています。

bool O2DatDB::select ( O2DatRec out,
const wchar_t *  domain,
const wchar_t *  bbsname 
)

O2DatDB.cpp443 行で定義されています。

bool O2DatDB::select ( O2DatRecList out  ) 

O2DatDB.cpp567 行で定義されています。

bool O2DatDB::select ( O2DatRecList out,
const wchar_t *  domain,
const wchar_t *  bbsname 
)

O2DatDB.cpp616 行で定義されています。

bool O2DatDB::select ( O2DatRec out,
const wchar_t *  domain,
const wchar_t *  bbsname,
const wchar_t *  datname 
)

O2DatDB.cpp504 行で定義されています。

bool O2DatDB::select ( O2DatRecList out,
time_t  publish_tt,
size_t  limit 
)

O2DatDB.cpp673 行で定義されています。

uint64 O2DatDB::select_datcount ( void   ) 

O2DatDB.cpp731 行で定義されています。

uint64 O2DatDB::select_datcount ( wstrnummap out  ) 

O2DatDB.cpp779 行で定義されています。

uint64 O2DatDB::select_totaldisksize ( void   ) 

O2DatDB.cpp833 行で定義されています。

uint64 O2DatDB::select_publishcount ( time_t  publish_tt  ) 

O2DatDB.cpp880 行で定義されています。

void O2DatDB::update ( O2DatRecList in  ) 

O2DatDB.cpp1038 行で定義されています。

bool O2DatDB::remove ( const hashT hash  ) 

O2DatDB.cpp1233 行で定義されています。

void O2DatDB::AddUpdateQueue ( O2DatRec in  ) 

O2DatDB.cpp1281 行で定義されています。

void O2DatDB::AddUpdateQueue ( const hashT hash  ) 

O2DatDB.cpp1291 行で定義されています。

void O2DatDB::StartUpdateThread ( void   ) 

O2DatDB.cpp1309 行で定義されています。

void O2DatDB::StopUpdateThread ( void   ) 

O2DatDB.cpp1321 行で定義されています。

uint WINAPI O2DatDB::StaticUpdateThread ( void *  data  )  [static]

O2DatDB.cpp1342 行で定義されています。

void O2DatDB::UpdateThread ( void   ) 

O2DatDB.cpp1355 行で定義されています。


変数

O2Logger* O2DatDB::Logger [protected]

O2DatDB.h57 行で定義されています。

O2DatDB.h58 行で定義されています。

O2DatDB.h60 行で定義されています。

O2DatDB.h61 行で定義されています。

HANDLE O2DatDB::UpdateThreadHandle [protected]

O2DatDB.h62 行で定義されています。

bool O2DatDB::UpdateThreadLoop [protected]

O2DatDB.h63 行で定義されています。

O2DatDB.h64 行で定義されています。


このクラスの説明は次のファイルから生成されました:

Mon Mar 24 23:13:33 2008に生成されました。  doxygen 1.5.5