cds
2.3.2
|
Framework to define template options. More...
Namespaces | |
v | |
Predefined options value. | |
Data Structures | |
struct | alignment |
[value-option] Alignment option setter More... | |
struct | allocator |
[type-option] Option setter for an allocator More... | |
struct | back_off |
[type-option] Back-off strategy option setter More... | |
struct | buffer |
[type-option] Option setter for user-provided plain buffer More... | |
struct | compare |
[type-option] Option setter for key comparing More... | |
struct | copy_policy |
Copy policy option. More... | |
struct | elimination_backoff |
Elimination back-off strategy option setter More... | |
struct | enable_elimination |
Enable elimination back-off for the container. More... | |
struct | equal_to |
[type-option] Option setter for opt::equal_to predicate More... | |
struct | find_option |
Metafunction to find What option in Options list. More... | |
struct | find_type_traits |
Metafunction to find opt::type_traits option in Options list. More... | |
struct | free_list |
[type-option] Free-list implementation More... | |
struct | gc |
[type-option] Option setter for garbage collecting schema used More... | |
struct | hash |
[type-option] Option setter for a hash function More... | |
struct | hash< std::tuple< Functors... > > |
Multi-functor hash option setter - specialization for std::tuple . More... | |
struct | item_counter |
[type-option] Option setter for item counting More... | |
struct | less |
[type-option] Option setter for less predicate More... | |
struct | lock_type |
[type-option] Option setter specifies lock class More... | |
struct | make_options |
make_options metafunction More... | |
struct | memory_model |
[type-option] Option setter for C++ memory model More... | |
struct | move_policy |
Move policy option. More... | |
struct | mutex_policy |
[type-option] Concurrent access policy More... | |
struct | node_allocator |
[type-option] Option setter for node allocator More... | |
struct | none |
Type indicates that an option is not specified and the default one should be used. More... | |
struct | padding |
[value-option] Padding option setter More... | |
struct | permutation_generator |
[type-option] Random permutation generator option setter More... | |
struct | random_engine |
[type-option] Random number generator More... | |
struct | rcu_check_deadlock |
[type-option] RCU check deadlock option setter More... | |
struct | resizing_policy |
Resizing policy option. More... | |
struct | select |
Select option metafunction. More... | |
struct | select_default |
Metafunction for selecting default option value. More... | |
struct | sort |
[value-option] Enable sorting More... | |
struct | stat |
[type-option] Generic option setter for statisitcs More... | |
struct | swap_policy |
Swap policy option. More... | |
struct | sync_monitor |
[type-option] Monitor type setter More... | |
struct | tag |
[type-option] Option setter specifies a tag More... | |
struct | type_traits |
[type-option] Base type traits option setter More... | |
struct | value |
Metafunction to select option value. More... | |
struct | value_cleaner |
[type-option] value cleaning More... | |
struct | wait_strategy |
Wait strategy option for flat_combining::kernel . More... | |
Typedefs | |
template<typename... Functors> | |
using | hash_tuple = details::hash_list< std::tuple< Functors... > > |
Declare tuple for hash functors Functors . | |
Enumerations | |
enum | special_alignment { no_special_alignment = 0, cache_line_alignment = 1 } |
Special alignment constants for cds::opt::alignment option. More... | |
enum | special_padding { no_special_padding = 0, cache_line_padding = 1, padding_tiny_data_only = 0x80000000 } |
Special padding constants for cds::opt::padding option. More... | |
Framework to define template options.
There are two kind of options:
type-option
- option that determines a data type. The template argument Type
of the option is a type.value-option
- option that determines a value. The template argument Value
of the option is a value. Special alignment constants for cds::opt::alignment option.
Enumerator | |
---|---|
no_special_alignment | no special alignment |
cache_line_alignment | use cache line size defined in cds/user_setup/cache_line.h |
Special padding constants for cds::opt::padding
option.
Enumerator | |
---|---|
no_special_padding | no special padding |
cache_line_padding | use cache line size defined in cds/user_setup/cache_line.h |
padding_tiny_data_only | Apply padding only for tiny data when data size is less than required padding. The flag means that if your data size is less than the cacheline size, the padding is applyed. Otherwise no padding will be applyed. This flag is applyed for padding value: |