alpaka
Abstraction Library for Parallel Kernel Acceleration
Traits.hpp File Reference
#include "alpaka/core/Common.hpp"
#include "alpaka/core/Interface.hpp"
#include "alpaka/dev/Traits.hpp"
#include "alpaka/queue/Traits.hpp"
#include <type_traits>
#include <vector>

Go to the source code of this file.

Classes

struct  alpaka::ConceptPlatform
 
struct  alpaka::trait::PlatformType< TPlatform, std::enable_if_t< interface::ImplementsInterface< ConceptPlatform, TPlatform >::value > >
 
struct  alpaka::trait::QueueType< TPlatform, TProperty, std::enable_if_t< interface::ImplementsInterface< ConceptPlatform, TPlatform >::value > >
 

Namespaces

 alpaka
 The alpaka accelerator library.
 
 alpaka::trait
 The accelerator traits.
 

Typedefs

template<typename T >
using alpaka::Platform = typename trait::PlatformType< T >::type
 The platform type trait alias template to remove the ::type. More...
 

Functions

template<typename TPlatform >
ALPAKA_FN_HOST auto alpaka::getDevByIdx (TPlatform const &platform, std::size_t const &devIdx) -> Dev< TPlatform >
 
template<typename TPlatform >
ALPAKA_FN_HOST auto alpaka::getDevCount (TPlatform const &platform)
 
template<typename TPlatform >
ALPAKA_FN_HOST auto alpaka::getDevs (TPlatform const &platform) -> std::vector< Dev< TPlatform >>
 

Variables

template<typename TPlatform >
constexpr bool alpaka::isPlatform = interface::ImplementsInterface<ConceptPlatform, TPlatform>::value
 True if TPlatform is a platform, i.e. if it implements the ConceptPlatform concept. More...