ABACUS develop
Atomic-orbital Based Ab-initio Computation at UStc
Loading...
Searching...
No Matches
Namespaces | Functions
device_helpers.h File Reference

Type trait templates for device and precision detection. More...

#include "types.h"
#include <complex>
#include <string>
#include <type_traits>
Include dependency graph for device_helpers.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  base_device
 

Functions

template<typename Device >
AbacusDevice_t base_device::get_device_type (const Device *dev)
 Get the device type enum for a given device type (compile-time version).
 
template<typename T >
std::string base_device::get_current_precision (const T *var)
 Get the precision string for a given numeric type.
 
template<>
std::string base_device::get_current_precision< float > (const float *var)
 
template<>
std::string base_device::get_current_precision< double > (const double *var)
 
template<>
std::string base_device::get_current_precision< std::complex< float > > (const std::complex< float > *var)
 
template<>
std::string base_device::get_current_precision< std::complex< double > > (const std::complex< double > *var)
 

Detailed Description

Type trait templates for device and precision detection.

This header provides template declarations for: