Stokhos Package Browser (Single Doxygen Collection)  Version of the Day
Stokhos_StorageHelpers.hpp
Go to the documentation of this file.
1 #ifndef STOKHOS_STORAGE_HELPERS_HPP
2 #define STOKHOS_STORAGE_HELPERS_HPP
3 
4 #define STOKHOS_STORAGE_HELPER_STRINGNAME_DYNAMIC(__storagename__) \
5  namespace Sacado \
6  { \
7  template <typename ordinal_t, typename value_t, typename device_t> \
8  struct StringName<Stokhos::__storagename__<ordinal_t, \
9  value_t, \
10  device_t>> \
11  { \
12  static std::string eval() \
13  { \
14  std::stringstream ss; \
15  ss << "Stokhos::" #__storagename__ "<" \
16  << StringName<ordinal_t>::eval() << "," \
17  << StringName<value_t>::eval() << "," \
18  << StringName<device_t>::eval() << ">"; \
19  return ss.str(); \
20  } \
21  }; \
22  }
23 
24 #define STOKHOS_STORAGE_HELPER_STRINGNAME_STATIC(__storagename__) \
25  namespace Sacado \
26  { \
27  template <typename ordinal_t, typename value_t, int Num, typename device_t> \
28  struct StringName<Stokhos::__storagename__<ordinal_t, \
29  value_t, \
30  Num, \
31  device_t>> \
32  { \
33  static std::string eval() \
34  { \
35  std::stringstream ss; \
36  ss << "Stokhos::" #__storagename__ "<" \
37  << StringName<ordinal_t>::eval() << "," \
38  << StringName<value_t>::eval() << "," \
39  << Num << "," \
40  << StringName<device_t>::eval() << ">"; \
41  return ss.str(); \
42  } \
43  }; \
44  }
45 
46 #endif // STOKHOS_STORAGE_HELPERS_HPP