OPAL (Object Oriented Parallel Accelerator Library)  2021.1.99
OPAL
Classes | Macros
DiscType.h File Reference
#include "AppTypes/Vektor.h"
#include "AppTypes/Tenzor.h"
#include "AppTypes/SymTenzor.h"
#include "AppTypes/AntiSymTenzor.h"
Include dependency graph for DiscType.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  DiscTypeBase
 
struct  DiscType< T >
 
struct  DiscType< char >
 
struct  DiscType< short >
 
struct  DiscType< int >
 
struct  DiscType< long >
 
struct  DiscType< float >
 
struct  DiscType< double >
 
struct  DiscType< unsigned char >
 
struct  DiscType< unsigned short >
 
struct  DiscType< unsigned int >
 
struct  DiscType< unsigned long >
 
struct  DiscType< std::complex< float > >
 
struct  DiscType< std::complex< double > >
 
struct  DiscType< Vektor< T, D > >
 
struct  DiscType< Tenzor< T, D > >
 
struct  DiscType< SymTenzor< T, D > >
 
struct  DiscType< AntiSymTenzor< T, D > >
 

Macros

#define DEFINE_DISCTYPE_SCALAR(TYPE, STRING)
 
#define DEFINE_DISCTYPE_APPTYPE(TYPE, STRING)
 

Macro Definition Documentation

◆ DEFINE_DISCTYPE_APPTYPE

#define DEFINE_DISCTYPE_APPTYPE (   TYPE,
  STRING 
)
Value:
template<class T, unsigned D> \
struct DiscType< TYPE<T, D> > : public DiscTypeBase { \
static std::string str() { \
CTAssert(D < 10); \
std::string retval = STRING; \
retval += "0"; \
retval += DiscType<T>::str(); \
retval[1] += D; \
return retval; \
} \
};
@ STRING
Definition: ast.hpp:33
static std::string str()
Definition: DiscType.h:99

Definition at line 142 of file DiscType.h.

◆ DEFINE_DISCTYPE_SCALAR

#define DEFINE_DISCTYPE_SCALAR (   TYPE,
  STRING 
)
Value:
template<> \
struct DiscType< TYPE > : public DiscTypeBase { \
static std::string str() { return std::string(STRING); } \
};

Definition at line 114 of file DiscType.h.