#include <cache.h>
|
| Cache (size_t duration, size_t interval, std::shared_ptr< TickService > tick_service) |
|
| Cache ()=delete |
|
| Cache (const Cache &)=default |
|
| Cache (Cache &&) noexcept=default |
|
Cache & | operator= (const Cache &)=default |
|
Cache & | operator= (Cache &&) noexcept=default |
|
size_t | Size () const noexcept |
|
bool | Empty () const noexcept |
|
void | Insert (const K &key, const T &value, size_t ttl) |
|
void | Insert (const K &key, T &&value, size_t ttl) |
|
bool | Contains (const K &key) noexcept |
|
bool | Contains (const K &start_key, const K &end_key) noexcept |
|
ValueType | Get (const K &key) noexcept |
|
std::vector< ValueType > | Get (const K &start_key, const K &end_key) noexcept |
|
ValueType | First () noexcept |
|
ValueType | Last () noexcept |
|
void | Clear () noexcept |
|
|
const size_t | duration_ |
| The duration in ticks of the entire queue.
|
|
const size_t | interval_ |
| The interval at which buckets are cleared in ticks.
|
|
const size_t | total_buckets_ |
| The total amount of buckets. Value is calculated by duration / interval.
|
|
IndexType | bucket_index_ { 0 } |
| The index in time of the current bucket.
|
|
TickType | current_ticks_ { 0 } |
| Last calculated tick value.
|
|
std::vector< BucketType > | buckets_ |
| The memory storage for all keys to be managed.
|
|
CacheType | cache_ |
| The cache of elements being stored.
|
|
std::shared_ptr< TickService > | tick_service_ |
| Tick service for calculating new tick and jumps in time.
|
|
template<typename K, typename T>
class quicr::Cache< K, T >
- Examples
- server.cpp.
◆ Cache() [1/4]
template<typename K , typename T >
quicr::Cache< K, T >::Cache |
( |
size_t | duration, |
|
|
size_t | interval, |
|
|
std::shared_ptr< TickService > | tick_service ) |
|
inline |
◆ Cache() [2/4]
template<typename K , typename T >
◆ Cache() [3/4]
template<typename K , typename T >
◆ Cache() [4/4]
template<typename K , typename T >
◆ Advance()
template<typename K , typename T >
◆ Clear()
template<typename K , typename T >
◆ Contains() [1/2]
template<typename K , typename T >
◆ Contains() [2/2]
template<typename K , typename T >
bool quicr::Cache< K, T >::Contains |
( |
const K & | start_key, |
|
|
const K & | end_key ) |
|
inlinenoexcept |
◆ Empty()
template<typename K , typename T >
◆ First()
template<typename K , typename T >
◆ Get() [1/2]
template<typename K , typename T >
◆ Get() [2/2]
template<typename K , typename T >
std::vector< ValueType > quicr::Cache< K, T >::Get |
( |
const K & | start_key, |
|
|
const K & | end_key ) |
|
inlinenoexcept |
◆ Insert() [1/2]
template<typename K , typename T >
void quicr::Cache< K, T >::Insert |
( |
const K & | key, |
|
|
const T & | value, |
|
|
size_t | ttl ) |
|
inline |
◆ Insert() [2/2]
template<typename K , typename T >
void quicr::Cache< K, T >::Insert |
( |
const K & | key, |
|
|
T && | value, |
|
|
size_t | ttl ) |
|
inline |
◆ InternalInsert()
template<typename K , typename T >
template<typename Value >
void quicr::Cache< K, T >::InternalInsert |
( |
const K & | key, |
|
|
Value | value, |
|
|
size_t | ttl ) |
|
inlineprotected |
◆ Last()
template<typename K , typename T >
◆ operator=() [1/2]
template<typename K , typename T >
◆ operator=() [2/2]
template<typename K , typename T >
◆ Size()
template<typename K , typename T >
◆ bucket_index_
template<typename K , typename T >
The index in time of the current bucket.
◆ buckets_
template<typename K , typename T >
The memory storage for all keys to be managed.
◆ cache_
template<typename K , typename T >
The cache of elements being stored.
◆ current_ticks_
template<typename K , typename T >
Last calculated tick value.
◆ duration_
template<typename K , typename T >
The duration in ticks of the entire queue.
◆ interval_
template<typename K , typename T >
The interval at which buckets are cleared in ticks.
◆ tick_service_
template<typename K , typename T >
std::shared_ptr<TickService> quicr::Cache< K, T >::tick_service_ |
|
protected |
Tick service for calculating new tick and jumps in time.
◆ total_buckets_
template<typename K , typename T >
The total amount of buckets. Value is calculated by duration / interval.
The documentation for this class was generated from the following file: