7#ifndef RANDOM_ALLOCATION_STATE_H
8#define RANDOM_ALLOCATION_STATE_H
13#include <boost/shared_ptr.hpp>
20class PoolRandomAllocationState;
54 const uint8_t delegated);
61 return (permutation_);
The IOAddress class represents an IP addresses (version agnostic)
Base class for representing allocation state in pools and subnets.
Pool allocation state used by the random allocator.
PoolRandomAllocationState(const asiolink::IOAddress &first, const asiolink::IOAddress &last)
Constructor from an IP address pool.
IPRangePermutationPtr getPermutation() const
Returns a pointer to the permutation of addresses or delegated prefixes.
static PoolRandomAllocationStatePtr create(const PoolPtr &pool)
Factory function creating the state instance from pool.
boost::shared_ptr< PoolRandomAllocationState > PoolRandomAllocationStatePtr
Type of the pointer to the PoolRandomAllocationState.
boost::shared_ptr< IPRangePermutation > IPRangePermutationPtr
Pointer to the IPRangePermutation.
boost::shared_ptr< Pool > PoolPtr
a pointer to either IPv4 or IPv6 Pool
Defines the logger used by the top-level component of kea-lfc.