Go to the documentation of this file.
22 #ifndef __sortedPairs_hpp__
23 #define __sortedPairs_hpp__
32 template<
typename executionSpace,
typename idType>
96 Kokkos::Schedule<Kokkos::Static>,
97 Kokkos::IndexType<uint32>,
102 Kokkos::Schedule<Kokkos::Static>,
103 Kokkos::IndexType<uint32>,
200 Kokkos::parallel_for(
201 "contactPairsSorted::fillFlag",
215 if(
size_ == 0 )
return;
225 Kokkos::parallel_for(
226 "contactPairsSorted::fillPairs",
258 #endif //__sortedPairs_hpp__
sortedPairs(uint32 initialSize=1)
INLINE_FUNCTION_HD void operator()(TagFillFlag, uint32 i) const
typename UnsortedPairs::IdType IdType
ViewType1D< PairType, ExecutionSpace > sortedPairs_
INLINE_FUNCTION_HD uint32 capacity() const
INLINE_FUNCTION_HD bool getPair(uint32 i, PairType &pair) const
Pair< idType, idType > PairType
INLINE_FUNCTION_H void reallocNoInit(ViewType1D< Type, Properties... > &view, uint32 len)
typename UnsortedPairs::PairType PairType
Kokkos::RangePolicy< ExecutionSpace, Kokkos::Schedule< Kokkos::Static >, Kokkos::IndexType< uint32 >, TagFillFlag > rpFillFlag
INLINE_FUNCTION_HD bool isValid(uint32 idx) const
INLINE_FUNCTION_H void getNth(Type &dst, const ViewType1D< Type, sProperties... > &src, const uint32 n)
uint32 size_
size of pair list
INLINE_FUNCTION_H void clear()
typename ExecutionSpace::memory_space memory_space
INLINE_FUNCTION_HD PairType getPair(uint32 i) const
#define INLINE_FUNCTION_H
ViewType1D< uint32, ExecutionSpace > flags_
INLINE_FUNCTION_H void clear()
ViewType1D< PairType, ExecutionSpace > sortedParis_
Kokkos::View< T *, properties... > ViewType1D
1D veiw as a vector
unorderedSet< PairType, ExecutionSpace > ContainerType
INLINE_FUNCTION_HD PairType getPair(uint32 idx) const
typename UnsortedPairs::ContainerType ContainerType
INLINE_FUNCTION_HD bool isValid(uint32 i) const
void sort(Vector< T, Allocator > &vec)
pairAccessor getPairs() const
INLINE_FUNCTION_H uint32 size() const
Kokkos::RangePolicy< ExecutionSpace, Kokkos::Schedule< Kokkos::Static >, Kokkos::IndexType< uint32 >, TagFillPairs > rpFillPairs
INLINE_FUNCTION_HD void operator()(TagFillPairs, uint32 i) const
typename sortedPairs::PairType PairType
#define INLINE_FUNCTION_HD
executionSpace ExecutionSpace
typename UnsortedPairs::ExecutionSpace ExecutionSpace
INLINE_FUNCTION_HD uint32 loopCount() const
void exclusiveScan(const ViewType1D< Type, properties... > &view, uint32 start, uint32 end, ViewType1D< Type, dProperties... > &dView, uint32 dStart)
INLINE_FUNCTION_HD bool getPair(uint32 idx, PairType &p) const
INLINE_FUNCTION_HD uint32 size() const
TypeInfoNV("sortedPairs")