MPQC 3.0.0-alpha
Loading...
Searching...
No Matches
sc::ConcurrentCacheWithSymmetry< val_type, KeySymmetry< IdentityKeyPermutation< sizeof...(key_types)>, KeyTransposition< n_keys, idx1, idx2 > >, key_types... > Class Template Reference

Specialization with only one transposition other than the identity. More...

#include <util/container/conc_cache.h>

Inheritance diagram for sc::ConcurrentCacheWithSymmetry< val_type, KeySymmetry< IdentityKeyPermutation< sizeof...(key_types)>, KeyTransposition< n_keys, idx1, idx2 > >, key_types... >:
sc::ConcurrentCacheBase< val_type, key_types... >

Public Types

typedef ConcurrentCacheBase< val_type, key_types... > super_t
 
typedef KeyTransposition< n_keys, idx1, idx2 > transposition_type
 
typedef super_t::key_tuple key_tuple
 
typedef super_t::value_type value_type
 
- Public Types inherited from sc::ConcurrentCacheBase< val_type, key_types... >
using tuple_type
 types for keys
 
typedef tuple_type< key_types... > key_tuple
 The type used as a key into the map.
 
typedef ValueType value_type
 types for map of values
 
typedef boost::shared_future< value_typefuture_value
 A future of a value, used to prevent recomputation.
 
typedef madness::ConcurrentHashMap< key_tuple, future_value, _hash< key_tuple > > future_map
 A map from keys to futures.
 
typedef future_map::accessor future_map_accessor
 The accessor type used by the madness ConcurrentHashMap.
 
typedef future_map::const_accessor future_map_const_accessor
 The const accessor used by the madness ConcurrentHashMap.
 

Public Member Functions

value_type get_or_permute (key_types... keys, const std::function< value_type(const key_tuple &)> &compute_fxn, const std::function< value_type(const value_type &, const key_tuple &)> &permute_fxn)
 
- Public Member Functions inherited from sc::ConcurrentCacheBase< val_type, key_types... >
 ConcurrentCacheBase (int nbins)
 
value_type get (key_types... keys, const std::function< value_type()> &compute_fxn)
 
value_type get (key_types... keys, const std::function< value_type(const key_tuple &)> &compute_fxn)
 
void clear ()
 

Additional Inherited Members

- Protected Attributes inherited from sc::ConcurrentCacheBase< val_type, key_types... >
future_map cached_values_
 

Detailed Description

template<typename val_type, int n_keys, int idx1, int idx2, typename... key_types>
class sc::ConcurrentCacheWithSymmetry< val_type, KeySymmetry< IdentityKeyPermutation< sizeof...(key_types)>, KeyTransposition< n_keys, idx1, idx2 > >, key_types... >

Specialization with only one transposition other than the identity.


The documentation for this class was generated from the following file:

Generated at Wed Sep 25 2024 02:45:32 for MPQC 3.0.0-alpha using the documentation package Doxygen 1.12.0.