OpenSDN source code
|
#include <resource_table.h>
Public Types | |
typedef boost::shared_ptr < ResourceKey > | KeyPtr |
typedef boost::shared_ptr < ResourceData > | DataPtr |
typedef ResourceTable::KeyPtr | ResourceKeyPtr |
typedef std::map< KeyPtr, DataPtr, KeyDataMapComparator > | KeyDataMap |
typedef KeyDataMap::iterator | KeyDataMapIter |
Public Member Functions | |
ResourceTable (ResourceManager *rm) | |
virtual | ~ResourceTable () |
virtual const std::string | ToString ()=0 |
virtual DataPtr | AllocateData (KeyPtr key)=0 |
virtual void | RestoreKey (KeyPtr key, DataPtr data)=0 |
virtual void | ReleaseKey (KeyPtr key, DataPtr data)=0 |
void | InsertKey (KeyPtr key, DataPtr data) |
void | DeleteKey (KeyPtr key) |
ResourceData * | FindKey (KeyPtr key) |
DataPtr | FindKeyPtr (KeyPtr key) |
void | FlushStale () |
ResourceTable::DataPtr | Allocate (KeyPtr key) |
ResourceManager * | resource_manager () const |
Private Member Functions | |
DISALLOW_COPY_AND_ASSIGN (ResourceTable) | |
Private Attributes | |
ResourceManager * | rm_ |
KeyDataMap | key_data_map_ |
Definition at line 67 of file resource_table.h.
typedef boost::shared_ptr<ResourceData> ResourceTable::DataPtr |
Definition at line 70 of file resource_table.h.
typedef std::map<KeyPtr, DataPtr, KeyDataMapComparator> ResourceTable::KeyDataMap |
Definition at line 72 of file resource_table.h.
typedef KeyDataMap::iterator ResourceTable::KeyDataMapIter |
Definition at line 73 of file resource_table.h.
typedef boost::shared_ptr<ResourceKey> ResourceTable::KeyPtr |
Definition at line 69 of file resource_table.h.
Definition at line 71 of file resource_table.h.
ResourceTable::ResourceTable | ( | ResourceManager * | rm | ) |
Definition at line 39 of file resource_table.cc.
|
virtual |
Definition at line 42 of file resource_table.cc.
ResourceTable::DataPtr ResourceTable::Allocate | ( | KeyPtr | key | ) |
Implemented in IndexResourceTable.
void ResourceTable::DeleteKey | ( | KeyPtr | key | ) |
Definition at line 50 of file resource_table.cc.
|
private |
ResourceData * ResourceTable::FindKey | ( | KeyPtr | key | ) |
ResourceTable::DataPtr ResourceTable::FindKeyPtr | ( | KeyPtr | key | ) |
Definition at line 54 of file resource_table.cc.
void ResourceTable::FlushStale | ( | ) |
Definition at line 46 of file resource_table.cc.
Implemented in IndexResourceTable.
|
inline |
Definition at line 86 of file resource_table.h.
Implemented in IndexResourceTable.
|
pure virtual |
Implemented in IndexResourceTable.
|
private |
Definition at line 89 of file resource_table.h.
|
private |
Definition at line 88 of file resource_table.h.