Kea 3.1.1
ping_context_store.h File Reference
#include <asiolink/io_address.h>
#include <ping_context.h>
#include <boost/multi_index/indexed_by.hpp>
#include <boost/multi_index/member.hpp>
#include <boost/multi_index/mem_fun.hpp>
#include <boost/multi_index/ordered_index.hpp>
#include <boost/multi_index_container.hpp>
#include <boost/multi_index/composite_key.hpp>
#include <boost/scoped_ptr.hpp>
#include <mutex>
#include <vector>
+ Include dependency graph for ping_context_store.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  isc::ping_check::AddressIndexTag
 Tag for index by target address. More...
 
class  isc::ping_check::DuplicateContext
 Exception thrown when an attempt was made to add a duplicate context. More...
 
struct  isc::ping_check::ExpirationIndexTag
 Tag for index by expiration time. More...
 
struct  isc::ping_check::NextToSendIndexTag
 Tag for index by send wait start time. More...
 
class  isc::ping_check::PingContextStore
 Maintains an in-memory store of PingContexts. More...
 
struct  isc::ping_check::QueryIndexTag
 Tag for index by the query packet. More...
 
struct  isc::ping_check::StateIndexTag
 Tag for index by state. More...
 

Namespaces

namespace  isc
 Defines the logger used by the top-level component of kea-lfc.
 
namespace  isc::ping_check
 

Typedefs

typedef std::vector< PingContextPtrisc::ping_check::PingContextCollection
 Type for a collection of PingContextPtrs.
 
typedef boost::shared_ptr< PingContextCollectionisc::ping_check::PingContextCollectionPtr
 Type for a pointer to a collection of PingContextPtrs.
 
typedef boost::multi_index_container< PingContextPtr, boost::multi_index::indexed_by< boost::multi_index::ordered_unique< boost::multi_index::tag< AddressIndexTag >, boost::multi_index::const_mem_fun< PingContext, const isc::asiolink::IOAddress &, &PingContext::getTarget > >, boost::multi_index::ordered_unique< boost::multi_index::tag< QueryIndexTag >, boost::multi_index::const_mem_fun< PingContext, isc::dhcp::Pkt4Ptr, &PingContext::getQuery > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< NextToSendIndexTag >, boost::multi_index::composite_key< PingContext, boost::multi_index::const_mem_fun< PingContext, bool, &PingContext::isWaitingToSend >, boost::multi_index::const_mem_fun< PingContext, const TimeStamp &, &PingContext::getSendWaitStart > > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< ExpirationIndexTag >, boost::multi_index::composite_key< PingContext, boost::multi_index::const_mem_fun< PingContext, bool, &PingContext::isWaitingForReply >, boost::multi_index::const_mem_fun< PingContext, const TimeStamp &, &PingContext::getNextExpiry > > >, boost::multi_index::ordered_non_unique< boost::multi_index::tag< StateIndexTag >, boost::multi_index::const_mem_fun< PingContext, PingContext::State, &PingContext::getState > > > > isc::ping_check::PingContextContainer
 A multi index container holding pointers to PingContexts.