#include <HashTable.hh>
Inheritance diagram for HashTable:

Public Member Functions | |
| virtual | ~HashTable () |
| virtual void * | Add (char const *key, void *value)=0 |
| virtual Boolean | Remove (char const *key)=0 |
| virtual void * | Lookup (char const *key) const =0 |
| virtual unsigned | numEntries () const=0 |
| Boolean | IsEmpty () const |
| void * | RemoveNext () |
Static Public Member Functions | |
| static HashTable * | create (int keyType) |
Protected Member Functions | |
| HashTable () | |
Data Structures | |
| class | Iterator |
Definition at line 27 of file HashTable.hh.
| HashTable::~HashTable | ( | ) | [virtual] |
| HashTable::HashTable | ( | ) | [protected] |
| HashTable * HashTable::create | ( | int | keyType | ) | [static] |
Definition at line 118 of file BasicHashTable.cpp.
Referenced by getSocketTable(), MPEG2TransportFileServerMediaSubsession::MPEG2TransportFileServerMediaSubsession(), MPEG2TransportStreamFramer::MPEG2TransportStreamFramer(), OnDemandServerMediaSubsession::OnDemandServerMediaSubsession(), and socketHashTable().
00118 { 00119 return new BasicHashTable(keyType); 00120 }
| virtual void* HashTable::Add | ( | char const * | key, | |
| void * | value | |||
| ) | [pure virtual] |
Implemented in BasicHashTable.
Referenced by RTPReceptionStatsDB::add(), RTPTransmissionStatsDB::add(), DirectedNetInterfaceSet::Add(), AddressPortLookupTable::Add(), MediaLookupTable::addNew(), RTSPServer::addServerMediaSession(), UserAuthenticationDatabase::addUserRecord(), MPEG2TransportFileServerMediaSubsession::createNewStreamSource(), SocketLookupTable::Fetch(), OnDemandServerMediaSubsession::getStreamParameters(), RTCPMemberDatabase::noteMembership(), SocketDescriptor::registerRTPInterface(), setGroupsockBySocket(), and MPEG2TransportStreamFramer::updateTSPacketDurationEstimate().
| virtual Boolean HashTable::Remove | ( | char const * | key | ) | [pure virtual] |
Implemented in BasicHashTable.
Referenced by OnDemandServerMediaSubsession::deleteStream(), SocketDescriptor::deregisterRTPInterface(), RTCPMemberDatabase::remove(), MediaLookupTable::remove(), SocketLookupTable::Remove(), DirectedNetInterfaceSet::Remove(), AddressPortLookupTable::Remove(), RemoveNext(), RTPReceptionStatsDB::removeRecord(), RTPTransmissionStatsDB::removeRecord(), RTSPServer::removeServerMediaSession(), removeSocketDescription(), UserAuthenticationDatabase::removeUserRecord(), and unsetGroupsockBySocket().
| virtual void* HashTable::Lookup | ( | char const * | key | ) | const [pure virtual] |
Implemented in BasicHashTable.
Referenced by OnDemandServerMediaSubsession::deleteStream(), SocketLookupTable::Fetch(), getGroupsockBySocket(), RTCPMemberDatabase::isMember(), RTPReceptionStatsDB::lookup(), RTPTransmissionStatsDB::lookup(), MediaLookupTable::lookup(), AddressPortLookupTable::Lookup(), MPEG2TransportFileServerMediaSubsession::lookupClient(), UserAuthenticationDatabase::lookupPassword(), SocketDescriptor::lookupRTPInterface(), RTSPServer::lookupServerMediaSession(), lookupSocketDescriptor(), UserAuthenticationDatabase::removeUserRecord(), setGroupsockBySocket(), OnDemandServerMediaSubsession::startStream(), unsetGroupsockBySocket(), and MPEG2TransportStreamFramer::updateTSPacketDurationEstimate().
| virtual unsigned HashTable::numEntries | ( | ) | const [pure virtual] |
| Boolean HashTable::IsEmpty | ( | ) | const [inline] |
Definition at line 41 of file HashTable.hh.
References numEntries().
Referenced by SocketDescriptor::deregisterRTPInterface(), DirectedNetInterfaceSet::IsEmpty(), SocketDescriptor::registerRTPInterface(), MediaLookupTable::remove(), removeSocketDescription(), and unsetGroupsockBySocket().
00041 { return numEntries() == 0; }
| void * HashTable::RemoveNext | ( | ) |
Definition at line 33 of file HashTable.cpp.
References HashTable::Iterator::create(), iter, MediaSubsessionIterator::next(), and Remove().
Referenced by MPEG2TransportStreamFramer::clearPIDStatusTable(), MPEG2TransportFileServerMediaSubsession::~MPEG2TransportFileServerMediaSubsession(), OnDemandServerMediaSubsession::~OnDemandServerMediaSubsession(), RTPReceptionStatsDB::~RTPReceptionStatsDB(), RTPTransmissionStatsDB::~RTPTransmissionStatsDB(), and RTSPServer::~RTSPServer().
00033 { 00034 Iterator* iter = Iterator::create(*this); 00035 char const* key; 00036 void* removedValue = iter->next(key); 00037 if (removedValue != 0) Remove(key); 00038 00039 delete iter; 00040 return removedValue; 00041 }
1.5.2