OpenSDN source code
|
#include <db_table_partition.h>
Public Types | |
typedef boost::intrusive::member_hook < DBEntry, boost::intrusive::set_member_hook <>,&DBEntry::node_ > | SetMember |
typedef boost::intrusive::set < DBEntry, SetMember > | Tree |
![]() | |
typedef boost::intrusive::member_hook < DBEntryBase, boost::intrusive::list_member_hook <>,&DBEntryBase::chg_list_ > | ChangeListMember |
typedef boost::intrusive::list < DBEntryBase, ChangeListMember > | ChangeList |
Public Member Functions | |
DBTablePartition (DBTable *parent, int index) | |
void | Process (DBClient *client, DBRequest *req) |
virtual DBEntry * | lower_bound (const DBEntryBase *entry) |
virtual DBEntry * | GetNext (const DBEntryBase *entry) |
virtual DBEntry * | GetFirst () |
virtual void | Add (DBEntry *entry) |
virtual void | Change (DBEntry *entry) |
virtual void | Remove (DBEntryBase *entry) |
DBEntry * | Find (const DBEntry *entry) |
const DBEntry * | Find (const DBEntry *entry) const |
DBEntry * | FindNoLock (const DBEntry *entry) |
DBEntry * | Find (const DBRequestKey *key) |
DBEntry * | FindNoLock (const DBRequestKey *key) |
DBEntry * | FindNext (const DBRequestKey *key) |
DBTable * | table () |
size_t | size () const |
void | AddWithoutAlloc (DBEntry *entry) |
void | RemoveWithoutDelete (DBEntry *entry) |
![]() | |
DBTablePartBase (DBTableBase *tbl_base, int index) | |
void | Notify (DBEntryBase *entry) |
bool | RunNotify () |
DBTableBase * | parent () |
int | index () const |
void | Delete (DBEntryBase *) |
tbb::spin_rw_mutex & | dbstate_mutex () |
virtual | ~DBTablePartBase () |
Private Member Functions | |
DBEntry * | FindInternal (const DBEntry *entry) |
const DBEntry * | FindInternal (const DBEntry *entry) const |
DISALLOW_COPY_AND_ASSIGN (DBTablePartition) | |
Private Attributes | |
tbb::mutex | mutex_ |
Tree | tree_ |
Additional Inherited Members | |
![]() | |
static const int | kMaxIterations = 256 |
Definition at line 66 of file db_table_partition.h.
typedef boost::intrusive::member_hook<DBEntry, boost::intrusive::set_member_hook<>, &DBEntry::node_> DBTablePartition::SetMember |
Definition at line 70 of file db_table_partition.h.
typedef boost::intrusive::set<DBEntry, SetMember> DBTablePartition::Tree |
Definition at line 71 of file db_table_partition.h.
DBTablePartition::DBTablePartition | ( | DBTable * | parent, |
int | index | ||
) |
Definition at line 86 of file db_table_partition.cc.
|
virtual |
Reimplemented in AgentDBTablePartition.
Definition at line 96 of file db_table_partition.cc.
void DBTablePartition::AddWithoutAlloc | ( | DBEntry * | entry | ) |
|
virtual |
|
private |
DBEntry * DBTablePartition::Find | ( | const DBRequestKey * | key | ) |
Definition at line 146 of file db_table_partition.cc.
Definition at line 154 of file db_table_partition.cc.
DBEntry * DBTablePartition::FindNext | ( | const DBRequestKey * | key | ) |
DBEntry * DBTablePartition::FindNoLock | ( | const DBRequestKey * | key | ) |
|
virtual |
Implements DBTablePartBase.
Definition at line 217 of file db_table_partition.cc.
|
virtual |
Implements DBTablePartBase.
Definition at line 227 of file db_table_partition.cc.
|
virtual |
Implements DBTablePartBase.
Definition at line 206 of file db_table_partition.cc.
Implements DBTablePartBase.
Definition at line 90 of file db_table_partition.cc.
|
virtual |
Implements DBTablePartBase.
Reimplemented in AgentDBTablePartition.
Definition at line 110 of file db_table_partition.cc.
void DBTablePartition::RemoveWithoutDelete | ( | DBEntry * | entry | ) |
|
inline |
Definition at line 114 of file db_table_partition.h.
DBTable * DBTablePartition::table | ( | ) |
|
mutableprivate |
Definition at line 126 of file db_table_partition.h.
|
private |
Definition at line 127 of file db_table_partition.h.