|
AXOM
Axom provides a robust, flexible software infrastructure for the development of multi-physics applications and computational tools.
|
Makes a unique array of values from values that could contain multiple instances of a key. More...
#include </home/docs/checkouts/readthedocs.org/user_builds/axom/checkouts/main/src/axom/bump/Unique.hpp>
Static Public Member Functions | |
| static void | execute (const axom::ArrayView< KeyType > keys_orig_view, axom::Array< KeyType > &skeys, axom::Array< axom::IndexType > &sindices, int allocator_id=axom::execution_space< ExecSpace >::allocatorID()) |
| This function makes a unique array of values from an input list of keys. The output set of unique keys is sorted. More... | |
Makes a unique array of values from values that could contain multiple instances of a key.
| ExecSpace | The execution space. |
| KeyType | The data type for the keys. |
|
inlinestatic |
This function makes a unique array of values from an input list of keys. The output set of unique keys is sorted.
| [in] | keys_orig_view | The input view that contains the input keys to be made unique. |
| [out] | skeys | A sorted unique array of keys produced from keys_orig_view. If there were duplicates in keys_orig_view then the size will be smaller since duplicates will have been removed. |
| [out] | sindices | An array of indices that indicate where in the original view the keys came from (the index of the key that was used the unique key). This array contains the same number of elements as skeys. This array is useful when the calling algorithm needs to select data out of other arrays associated with the keys. |
References AXOM_LAMBDA, axom::serial::reductions::ReduceSum< ExecSpace, T >::get(), axom::ArrayView< T, DIM, SPACE >::size(), and axom::Array< T, DIM, SPACE, StoragePolicy >::view().