Base-class for pContainers that implements general functionality needed by containers.
More...
|
template<typename DistSpecView > |
std::enable_if<(is_distribution_view< DistSpecView >::value||detail::has_is_composed_dist_spec< DistSpecView >::value) &&is_view_based< partition_type >::value &&is_view_based< mapper_type >::value >::type | redistribute (DistSpecView const &dist_view) |
| Redistribute the data stored in the container to match the distribution specified by the distribution view provided. More...
|
|
template<typename DistSpecView > |
std::enable_if<(is_distribution_view< DistSpecView >::value||detail::has_is_composed_dist_spec< DistSpecView >::value) &&is_view_based< partition_type >::value &&is_view_based< mapper_type >::value >::type | redistribute (DistSpecView const *dist_view) |
| Redistribute the data stored in the container to match the distribution specified by the distribution view provided. More...
|
|
void | destroy (void) |
| Used as a target method for rmis implementing one-sided destruction, as a pointer to member variable referring to the destructor cannot be initialized, per the standard. Used when container is an element of another container.
|
|
size_t | get_num_locations (void) const |
|
location_type | get_location_id (void) const |
|
boost::shared_ptr< C > | shared_from_this () |
|
|
| container (void) |
|
| container (distribution_type const &distribution) |
| Creates a container with the given distribution.
|
|
| container (directory_type const &dir, container_manager_type const &cm) |
| Creates a container with the given directory and base container manager. More...
|
|
template<typename Reg > |
| container (directory_type const &dir, container_manager_type const &cm, Reg const ®) |
| Creates a container with the given directory, base container manager, and registry. More...
|
|
| container (partition_type const &ps, mapper_type const &map) |
| Creates a container with a given size, partition and mapper.
|
|
template<typename Reg > |
| container (partition_type const &ps, mapper_type const &map, Reg const ®, typename std::enable_if< !detail::has_is_composed_dist_spec< Reg >::value >::type *=0) |
| Creates a container with a given size, partition and mapper. More...
|
|
template<typename DistSpecView , typename Reg > |
| container (std::shared_ptr< DistSpecView > dist_view, Reg const ®, typename std::enable_if< !detail::has_is_composed_dist_spec< Reg >::value >::type *=0) |
| Creates a container with a given size, partition and mapper. More...
|
|
| container (partition_type const &ps, mapper_type const &map, value_type const &default_value) |
| Creates a container with a given size, partition and mapper, constructing all elements with the default value provided.
|
|
template<typename DistSpecView > |
| container (std::shared_ptr< DistSpecView > dist_view, typename std::enable_if< is_distribution_view< DistSpecView >::value &&!detail::has_is_composed_dist_spec< DistSpecView >::value >::type *=0) |
| Creates a container with the given distribution.
|
|
template<typename DistSpecView > |
| container (std::shared_ptr< DistSpecView > dist_view, value_type const &default_value, typename std::enable_if< is_distribution_view< DistSpecView >::value &&!detail::has_is_composed_dist_spec< DistSpecView >::value >::type *=0) |
| Creates a container with the given distribution, constructing all elements with the default value provided.
|
|
template<typename PartitionContainer > |
| container (PartitionContainer const *const part_cont, typename std::enable_if< std::is_same< typename PartitionContainer::value_type, arbitrary_partition_info >::value >::type *=0) |
| Creates a container with the distribution specified by the partitions contained in part_cont . More...
|
|
template<typename PartitionContainer > |
| container (PartitionContainer const *const part_cont, value_type const &default_value, typename std::enable_if< std::is_same< typename PartitionContainer::value_type, arbitrary_partition_info >::value >::type *=0) |
| Creates a container with the distribution specified by the partitions contained in part_cont , constructing all elements with the default value provided. More...
|
|
template<typename PartitionContainer , typename Reg > |
| container (PartitionContainer const *const part_cont, Reg const ®, typename std::enable_if< std::is_same< typename PartitionContainer::value_type, arbitrary_partition_info >::value >::type *=0) |
| Creates a container with the distribution specified by the partitions contained in part_cont . More...
|
|
template<typename DistSpecView , typename ComposedSpec > |
| container (std::shared_ptr< DistSpecView > dist_view, ComposedSpec const &comp_spec, typename std::enable_if< is_distribution_view< DistSpecView >::value &&detail::has_is_composed_dist_spec< ComposedSpec >::value >::type *=0) |
| Base constructor for composed containers. This constructor is invoked for the containers at the bottom of a m level composed container that has been constructed using distribution specifications. More...
|
|
template<typename DistSpecView , typename ComposedSpec > |
| container (std::shared_ptr< DistSpecView > dist_view, ComposedSpec const &comp_spec, boost::mpl::false_ const ®, typename std::enable_if< is_distribution_view< DistSpecView >::value &&detail::has_is_composed_dist_spec< ComposedSpec >::value >::type *=0) |
| Base constructor for composed containers. This constructor is invoked for the containers at the bottom of a m level composed container that has been constructed using distribution specifications. More...
|
|
|
void | set_element (index_type const &idx, value_type const &val) |
| Sets the element specified by the index to the provided value. More...
|
|
template<typename View > |
void | set_elements (index_type const &idx, View &&vals) |
| Sets a range of elements starting with a given index to a sequence of provided values. More...
|
|
value_type | get_element (index_type const &idx) const |
| Returns the value of the element specified by the index. More...
|
|
future< value_type > | get_element_split (index_type const &idx) |
| Returns a stapl::future holding the value of the element specified by the index. More...
|
|
template<typename F > |
void | apply_set (gid_type const &gid, F const &f) |
| Applies a function f to the element specified by the GID. More...
|
|
template<typename F > |
F::result_type | apply_get (gid_type const &gid, F const &f) |
| Applies a function f to the element specified by the GID, and returns the result. More...
|
|
template<typename F > |
F::result_type | apply_get (gid_type const &gid, F const &f) const |
| Applies a function f to the element specified by the GID, and returns the result. More...
|
|
|
domain_type | domain (void) const |
|
void | migrate (gid_type const &gid, location_type destination) |
| Migrates the element specified by the gid to the destination location. More...
|
|
size_type | size (void) const |
| Return the number of elements in the container. More...
|
|
bool | empty (void) const |
|
distribution_type & | distribution (void) |
|
distribution_type const & | distribution (void) const |
|
distribution_type * | get_distribution (void) |
|
locality_info | locality (gid_type gid) |
| Return locality information about the element specified by the gid. More...
|
|
template<typename... Indices> |
bool | is_local (Indices const &... i) const |
| Returns true if the element specified by the GID formed from the index components provided is stored on this location, or false otherwise.
|
|
rmi_handle::reference | get_rmi_handle_reference (void) |
|
template<typename DistSpecView > |
std::shared_ptr< DistSpecView > | get_spec (DistSpecView const &dist_view, typename std::enable_if< !detail::has_is_composed_dist_spec< DistSpecView >::value >::type *=0) |
| Return a shared_ptr to the distribution specification for this container instance. More...
|
|
template<typename ComposedSpec > |
std::shared_ptr< typename ComposedSpec::distribution_spec > | get_spec (ComposedSpec const &dist_view, typename std::enable_if< detail::has_is_composed_dist_spec< ComposedSpec >::value >::type *=0) |
| Return a shared_ptr to the distribution specification for this container instance that is part of a composed container instantiation. More...
|
|
template<typename C, bool = is_p_object< typename detail::get_nested_stored_value_type< container_traits<C> >::type>::value>
struct stapl::container< C, bool >
Base-class for pContainers that implements general functionality needed by containers.
- Template Parameters
-
C | derived container class for use with CRTP. |