Nektar++
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
Nektar::LibUtilities::CommDataTypeTraits< T > Class Template Reference

#include <CommDataType.h>

Public Member Functions

template<>
CommDataTypeGetDataType ()
 
template<>
CommDataTypeGetDataType ()
 
template<>
CommDataTypeGetDataType ()
 
template<>
CommDataTypeGetDataType ()
 
template<>
CommDataTypeGetDataType ()
 
template<>
CommDataTypeGetDataType ()
 
template<>
CommDataTypeGetDataType ()
 
template<>
CommDataTypeGetDataType ()
 
template<>
CommDataTypeGetDataType ()
 

Static Public Member Functions

static CommDataTypeGetDataType ()
 
static voidGetPointer (T &val)
 
static const voidGetPointer (const T &val)
 
static int GetCount (const T &val)
 

Static Public Attributes

static const bool IsVector = false
 

Detailed Description

template<class T>
class Nektar::LibUtilities::CommDataTypeTraits< T >

Definition at line 83 of file CommDataType.h.

Member Function Documentation

template<class T >
static int Nektar::LibUtilities::CommDataTypeTraits< T >::GetCount ( const T &  val)
inlinestatic
template<>
CommDataType & Nektar::LibUtilities::CommDataTypeTraits< int >::GetDataType ( )

Definition at line 85 of file CommDataType.cpp.

References Nektar::LibUtilities::MPI_INT.

86 {
87  static CommDataType type = MPI_INT;
88  return type;
89 }
template<class T >
static CommDataType& Nektar::LibUtilities::CommDataTypeTraits< T >::GetDataType ( )
static
template<>
CommDataType & Nektar::LibUtilities::CommDataTypeTraits< unsigned >::GetDataType ( )

Definition at line 91 of file CommDataType.cpp.

References Nektar::LibUtilities::MPI_UNSIGNED.

92 {
93  static CommDataType type = MPI_UNSIGNED;
94  return type;
95 }
template<>
CommDataType & Nektar::LibUtilities::CommDataTypeTraits< long >::GetDataType ( )

Definition at line 97 of file CommDataType.cpp.

References Nektar::LibUtilities::MPI_LONG.

98 {
99  static CommDataType type = MPI_LONG;
100  return type;
101 }
template<>
CommDataType & Nektar::LibUtilities::CommDataTypeTraits< unsigned long >::GetDataType ( )

Definition at line 103 of file CommDataType.cpp.

References Nektar::LibUtilities::MPI_UNSIGNED_LONG.

104 {
105  static CommDataType type = MPI_UNSIGNED_LONG;
106  return type;
107 }
template<>
CommDataType & Nektar::LibUtilities::CommDataTypeTraits< long long >::GetDataType ( )

Definition at line 109 of file CommDataType.cpp.

References Nektar::LibUtilities::MPI_LONG_LONG.

110 {
111  static CommDataType type = MPI_LONG_LONG;
112  return type;
113 }
template<>
CommDataType & Nektar::LibUtilities::CommDataTypeTraits< unsigned long long >::GetDataType ( )
template<>
CommDataType & Nektar::LibUtilities::CommDataTypeTraits< float >::GetDataType ( )

Definition at line 121 of file CommDataType.cpp.

References Nektar::LibUtilities::MPI_FLOAT.

122 {
123  static CommDataType type = MPI_FLOAT;
124  return type;
125 }
template<>
CommDataType & Nektar::LibUtilities::CommDataTypeTraits< double >::GetDataType ( )

Definition at line 127 of file CommDataType.cpp.

References Nektar::LibUtilities::MPI_DOUBLE.

128 {
129  static CommDataType type = MPI_DOUBLE;
130  return type;
131 }
template<>
CommDataType & Nektar::LibUtilities::CommDataTypeTraits< long double >::GetDataType ( )

Definition at line 133 of file CommDataType.cpp.

References Nektar::LibUtilities::MPI_LONG_DOUBLE.

134 {
135  static CommDataType type = MPI_LONG_DOUBLE;
136  return type;
137 }
template<class T >
static void* Nektar::LibUtilities::CommDataTypeTraits< T >::GetPointer ( T &  val)
inlinestatic

Definition at line 88 of file CommDataType.h.

Referenced by Nektar::LibUtilities::Comm::Gather(), and Nektar::LibUtilities::Comm::Scatter().

89  {
90  return &val;
91  }
template<class T >
static const void* Nektar::LibUtilities::CommDataTypeTraits< T >::GetPointer ( const T &  val)
inlinestatic

Definition at line 92 of file CommDataType.h.

93  {
94  return &val;
95  }

Member Data Documentation

template<class T >
const bool Nektar::LibUtilities::CommDataTypeTraits< T >::IsVector = false
static

Definition at line 101 of file CommDataType.h.