VPP  0.8
A high-level modern C++ API for Vulkan
vppctGroupAlg.hpp File Reference

Go to the source code of this file.

Classes

class  vpp::ct::group::GroupInvocation
 

Namespaces

 vpp
 The VPP namespace.
 
 vpp::ct
 The VPP Computation Toolkit namespace.
 
 vpp::ct::group
 The group algorithms namespace.
 

Functions

template<typename ArrayT , class FunctorT >
void vpp::ct::group::Apply (const ArrayT &arr, FunctorT &&fFunctor, const GroupInvocation &inv)
 
template<typename ArrayT , typename ValueT >
void vpp::ct::group::Fill (const ArrayT &arr, const ValueT &val, const GroupInvocation &inv)
 
template<typename ArrayT , class FunctorT >
void vpp::ct::group::Generate (const ArrayT &arr, FunctorT &&fFunctor, const GroupInvocation &inv)
 
template<typename ArrayT , class FunctorT >
void vpp::ct::group::Transform (const ArrayT &inArr, const ArrayT &outArr, FunctorT &&fFunctor, const GroupInvocation &inv)
 
template<typename ArrayT >
void vpp::ct::group::Copy (const ArrayT &inArr, const ArrayT &outArr, const GroupInvocation &inv)
 
template<class SourceArrayT , typename ArrayT >
void vpp::ct::group::Load (const SourceArrayT &inArr, const Int &sourceStartIndex, const ArrayT &outArr, const GroupInvocation &inv)
 
template<class SourceArrayT , typename ArrayT >
void vpp::ct::group::Load (const SourceArrayT &inArr, bool bColumnMajor, const Int &sourceStartIndex, const ArrayT &outArr, const GroupInvocation &inv)
 
template<class TargetArrayT , typename ArrayT >
void vpp::ct::group::Store (const ArrayT &inArr, const TargetArrayT &outArr, const Int &destStartIndex, const GroupInvocation &inv)
 
template<class TargetArrayT , typename ArrayT >
void vpp::ct::group::Store (const ArrayT &inArr, const TargetArrayT &outArr, bool bColumnMajor, const Int &destStartIndex, const GroupInvocation &inv)
 
template<typename ValueT , typename VValueT , class FunctorT >
ValueT vpp::ct::group::Reduce (WArray< ValueT > &arr, FunctorT &&fFunctor, VValueT &temporaryVal, WArray< ValueT > &tmpArr, const GroupInvocation &inv)
 
template<typename ValueT , typename VValueT , class FunctorT >
void vpp::ct::group::InclusiveScan (WArray< ValueT > &arr, FunctorT &&fFunctor, VValueT &temporaryVal, WArray< ValueT > &tmpArr, const GroupInvocation &inv)
 
template<typename ValueT , typename VValueT , class FunctorT >
void vpp::ct::group::ExclusiveScan (WArray< ValueT > &arr, FunctorT &&fFunctor, VValueT &temporaryVal, WArray< ValueT > &tmpArr, const GroupInvocation &inv)
 
template<typename ArrayT , typename FunctorT >
void vpp::ct::group::Sort (const ArrayT &arr, FunctorT &&fFunctor, const GroupInvocation &inv)
 
template<typename ArrayT , typename ValueT , typename FunctorT >
Int vpp::ct::group::LowerBound (const ArrayT &arr, const ValueT &v, FunctorT &&fFunctor, WArray< Int > &tmpArr, const GroupInvocation &inv)
 
template<typename ArrayT , typename ValueT , typename FunctorT >
Int vpp::ct::group::UpperBound (const ArrayT &arr, const ValueT &v, FunctorT &&fFunctor, WArray< Int > &tmpArr, const GroupInvocation &inv)