Helper functor used to project the domains in the given locality metadata (P
) to the domain of the given View
. The result is projected metadata locality information.
More...
Public Member Functions | |
return_type | operator() (View *view, P *part, bool part_is_fixed=true) const |
Project the metadata entries extracted from the underlying view into the domain of the view. More... | |
Public Types | |
typedef metadata_entry< domain_type, component_type, cid_type > | md_entry_type |
typedef metadata::growable_container< md_entry_type > | md_cont_type |
typedef std::pair< bool, md_cont_type * > | return_type |
Helper functor used to project the domains in the given locality metadata (P
) to the domain of the given View
. The result is projected metadata locality information.
This helper functor is invoked when there is no information about the given view, and is thus inefficient for most cases. It attempts to create a single metadata entry for each element of the view.
In its current form, this algorithm is incorrect, as it does not take into account that the input view could be a segmented view and its elements could be a collection of elements. In such a case, it is necessary to check each element in the subview.
return_type stapl::metadata::generic_metadata_projection< View, P >::operator() | ( | View * | view, |
P * | part, | ||
bool | part_is_fixed = true |
||
) | const |
Project the metadata entries extracted from the underlying view into the domain of the view.
view | The original view |
part | Container of metadata entries |