| 
    Intel(R) Threading Building Blocks Doxygen Documentation
    version 4.2.3
    
   | 
 
#include <concurrent_lru_cache.h>
Classes | |
| struct | aggregator_operation | 
| class | handle_object | 
| struct | map_value_type | 
| struct | retrieve_aggregator_operation | 
| struct | signal_end_of_usage_aggregator_operation | 
Public Types | |
| typedef handle_object | handle | 
Public Member Functions | |
| concurrent_lru_cache (value_function_type f, std::size_t number_of_lru_history_items) | |
| handle_object | operator[] (key_type k) | 
Private Types | |
| typedef concurrent_lru_cache | self_type | 
| typedef value_functor_type | value_function_type | 
| typedef std::size_t | ref_counter_type | 
| typedef std::map< key_type, map_value_type > | map_storage_type | 
| typedef std::list< typename map_storage_type::iterator > | lru_list_type | 
| typedef aggregator_operation | aggregated_operation_type | 
| typedef tbb::internal::aggregating_functor< self_type, aggregated_operation_type > | aggregator_function_type | 
| typedef tbb::internal::aggregator< aggregator_function_type, aggregated_operation_type > | aggregator_type | 
Private Member Functions | |
| void | signal_end_of_usage (typename map_storage_type::reference value_ref) | 
| void | handle_operations (aggregator_operation *op_list) | 
| map_storage_type::reference | retrieve_serial (key_type k, bool &is_new_value_needed) | 
| void | signal_end_of_usage_serial (typename map_storage_type::reference map_record_ref) | 
  Private Member Functions inherited from tbb::internal::no_assign | |
| void | operator= (const no_assign &)=delete | 
| no_assign (const no_assign &)=default | |
| no_assign ()=default | |
Private Attributes | |
| value_function_type | my_value_function | 
| std::size_t const | my_number_of_lru_history_items | 
| map_storage_type | my_map_storage | 
| lru_list_type | my_lru_list | 
| aggregator_type | my_aggregator | 
Friends | |
| class | tbb::internal::aggregating_functor< self_type, aggregated_operation_type > | 
Definition at line 44 of file concurrent_lru_cache.h.
      
  | 
  private | 
Definition at line 65 of file concurrent_lru_cache.h.
      
  | 
  private | 
Definition at line 67 of file concurrent_lru_cache.h.
      
  | 
  private | 
Definition at line 69 of file concurrent_lru_cache.h.
| typedef handle_object tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::handle | 
Definition at line 79 of file concurrent_lru_cache.h.
      
  | 
  private | 
Definition at line 51 of file concurrent_lru_cache.h.
      
  | 
  private | 
Definition at line 49 of file concurrent_lru_cache.h.
      
  | 
  private | 
Definition at line 48 of file concurrent_lru_cache.h.
      
  | 
  private | 
Definition at line 46 of file concurrent_lru_cache.h.
      
  | 
  private | 
Definition at line 47 of file concurrent_lru_cache.h.
      
  | 
  inline | 
Definition at line 82 of file concurrent_lru_cache.h.
References tbb::interface6::internal::aggregator< handler_type, operation_type >::initialize_handler(), and tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::my_aggregator.
      
  | 
  inlineprivate | 
Definition at line 229 of file concurrent_lru_cache.h.
References tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::aggregator_operation::cast_and_handle(), tbb::internal::itt_store_word_with_release(), tbb::interface6::internal::aggregated_operation< Derived >::next, and tbb::interface6::internal::aggregated_operation< Derived >::status.
      
  | 
  inline | 
Definition at line 88 of file concurrent_lru_cache.h.
References tbb::internal::__TBB_store_with_release(), tbb::interface6::internal::aggregator< handler_type, operation_type >::execute(), tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::retrieve_aggregator_operation::is_new_value_needed(), tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::my_aggregator, tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::my_value_function, tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::retrieve_aggregator_operation::result(), and tbb::internal::spin_wait_while_eq().
      
  | 
  inlineprivate | 
Definition at line 239 of file concurrent_lru_cache.h.
References __TBB_ASSERT, tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::my_lru_list, and tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::my_map_storage.
Referenced by tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::retrieve_aggregator_operation::handle().
      
  | 
  inlineprivate | 
Definition at line 100 of file concurrent_lru_cache.h.
References tbb::interface6::internal::aggregator< handler_type, operation_type >::execute(), and tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::my_aggregator.
Referenced by tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::handle_object::operator=(), and tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::handle_object::~handle_object().
      
  | 
  inlineprivate | 
Definition at line 258 of file concurrent_lru_cache.h.
References __TBB_ASSERT, tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::my_lru_list, tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::my_map_storage, and tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::my_number_of_lru_history_items.
Referenced by tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::signal_end_of_usage_aggregator_operation::handle().
      
  | 
  friend | 
Definition at line 68 of file concurrent_lru_cache.h.
      
  | 
  private | 
Definition at line 76 of file concurrent_lru_cache.h.
Referenced by tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::concurrent_lru_cache(), tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::operator[](), and tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::signal_end_of_usage().
      
  | 
  private | 
      
  | 
  private | 
      
  | 
  private | 
Definition at line 73 of file concurrent_lru_cache.h.
Referenced by tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::signal_end_of_usage_serial().
      
  | 
  private | 
Definition at line 72 of file concurrent_lru_cache.h.
Referenced by tbb::interface6::concurrent_lru_cache< key_type, value_type, value_functor_type >::operator[]().