Distributed vector property map. More...
#include <vector_property_map.hpp>
Public Types | |
typedef property_traits < GlobalMap >::key_type | key_type |
The key type of the property map. More... | |
typedef property_traits < vector_property_map< T, StorageMap > >::value_type | value_type |
The value type of the property map. More... | |
typedef property_traits < vector_property_map< T, StorageMap > >::reference | reference |
typedef ProcessGroup | process_group_type |
typedef multi_index::multi_index_container < std::pair< key_type, value_type > , multi_index::indexed_by < multi_index::sequenced <>, multi_index::hashed_unique < pair_first_extractor < key_type, value_type > > > > | ghost_cells_type |
The type of the ghost cells. More... | |
typedef ghost_cells_type::iterator | iterator |
Iterator into the ghost cells. More... | |
typedef ghost_cells_type::template nth_index< 1 >::type | ghost_cells_key_index_type |
Key-based index into the ghost cells. More... | |
typedef ghost_cells_key_index_type::iterator | key_iterator |
Iterator into the ghost cells (by key) More... | |
typedef detail::make_nonlvalue_property_map < (is_base_and_derived < lvalue_property_map_tag, local_category >::value||is_same < lvalue_property_map_tag, local_category >::value)> ::template apply < local_category >::type | category |
The property map category. More... | |
Public Member Functions | |
vector_property_map (const index_map_type &index=index_map_type()) | |
vector_property_map (unsigned inital_size, const index_map_type &index=index_map_type()) | |
void | set_reduce (const Reduce &reduce) |
Set the reduce operation of the distributed property map. More... | |
void | set_consistency_model (int model) |
int | get_consistency_model () const |
void | set_max_ghost_cells (std::size_t max_ghost_cells) |
void | clear () |
void | reset () |
void | flush () |
reference | operator[] (const key_type &key) const |
process_group_type | process_group () const |
vector_property_map< T, StorageMap > & | base () |
const vector_property_map< T, StorageMap > & | base () const |
void | request_put (process_id_type p, const key_type &k, const value_type &v) const |
Sends a "put" request. More... | |
value_type & | cell (const key_type &k, bool request_if_missing=true) const |
Access the ghost cell for the given key. More... | |
void | do_synchronize () |
Perform synchronization. More... | |
const GlobalMap & | global () const |
GlobalMap & | global () |
Public Attributes | |
shared_ptr< data_t > | data |
Distributed vector property map.
This specialization of vector_property_map builds a distributed vector property map given the local index maps generated by distributed graph types that automatically have index properties.
This specialization is useful when creating external distributed property maps via the same syntax used to create external sequential property maps.
|
inherited |
The property map category.
A distributed property map cannot be an Lvalue Property Map, because values on remote processes cannot be addresses.
|
inherited |
Key-based index into the ghost cells.
|
inherited |
The type of the ghost cells.
|
inherited |
Iterator into the ghost cells.
|
inherited |
Iterator into the ghost cells (by key)
|
inherited |
The key type of the property map.
|
inherited |
|
inherited |
|
inherited |
The value type of the property map.
|
inline |
|
inline |
|
inlineinherited |
|
inlineinherited |
|
inherited |
Access the ghost cell for the given key.
|
inherited |
|
inherited |
Perform synchronization.
|
inherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
Sends a "put" request.
References boost::parallel::distributed_property_map< ProcessGroup, GlobalMap, StorageMap >::data, and boost::parallel::send().
|
inherited |
|
inherited |
|
inherited |
|
inherited |
Set the reduce operation of the distributed property map.
|
inherited |