DFT-EFE
 
Loading...
Searching...
No Matches
Defaults.h
Go to the documentation of this file.
1/******************************************************************************
2 * Copyright (c) 2021. *
3 * The Regents of the University of Michigan and DFT-EFE developers. *
4 * *
5 * This file is part of the DFT-EFE code. *
6 * *
7 * DFT-EFE is free software: you can redistribute it and/or modify *
8 * it under the terms of the Lesser GNU General Public License as *
9 * published by the Free Software Foundation, either version 3 of *
10 * the License, or (at your option) any later version. *
11 * *
12 * DFT-EFE is distributed in the hope that it will be useful, but *
13 * WITHOUT ANY WARRANTY; without even the implied warranty *
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. *
15 * See the Lesser GNU General Public License for more details. *
16 * *
17 * You should have received a copy of the GNU Lesser General Public *
18 * License at the top level of DFT-EFE distribution. If not, see *
19 * <https://www.gnu.org/licenses/>. *
20 ******************************************************************************/
21
22/*
23 * @author Bikash Kanungo
24 */
25
26#ifndef dftefeUtilsDefaults_h
27#define dftefeUtilsDefaults_h
28
29#include <complex>
30#include <string>
31namespace dftefe
32{
33 namespace utils
34 {
35 template <typename T>
36 class Types
37 {
38 public:
39 static const T zero;
40 };
41
42 template <>
43 class Types<int>
44 {
45 public:
46 static const int zero;
47 };
48
49 template <>
50 class Types<unsigned int>
51 {
52 public:
53 static const unsigned int zero;
54 };
55
56 template <>
57 class Types<short int>
58 {
59 public:
60 static const short int zero;
61 };
62
63 template <>
64 class Types<unsigned short int>
65 {
66 public:
67 static const unsigned short int zero;
68 };
69
70 template <>
71 class Types<long int>
72 {
73 public:
74 static const long int zero;
75 };
76
77 template <>
78 class Types<unsigned long int>
79 {
80 public:
81 static const unsigned long int zero;
82 };
83
84 template <>
85 class Types<double>
86 {
87 public:
88 static const double zero;
89 };
90
91 template <>
92 class Types<float>
93 {
94 public:
95 static const float zero;
96 };
97
98 template <>
99 class Types<std::complex<double>>
100 {
101 public:
102 static const std::complex<double> zero;
103 };
104
105 template <>
106 class Types<std::complex<float>>
107 {
108 public:
109 static const std::complex<float> zero;
110 };
111
112 template <>
113 class Types<char>
114 {
115 public:
116 static const char zero;
117 };
118
119 template <>
120 class Types<std::string>
121 {
122 public:
123 static const std::string zero;
124 };
125 } // end of namespace utils
126} // end of namespace dftefe
127#include <utils/Defaults.t.cpp>
128#endif // dftefeUtilsDefaults_h
static const char zero
Definition: Defaults.h:116
static const double zero
Definition: Defaults.h:88
static const float zero
Definition: Defaults.h:95
static const int zero
Definition: Defaults.h:46
static const long int zero
Definition: Defaults.h:74
static const short int zero
Definition: Defaults.h:60
static const std::complex< double > zero
Definition: Defaults.h:102
static const std::complex< float > zero
Definition: Defaults.h:109
static const std::string zero
Definition: Defaults.h:123
static const unsigned int zero
Definition: Defaults.h:53
static const unsigned long int zero
Definition: Defaults.h:81
static const unsigned short int zero
Definition: Defaults.h:67
Definition: Defaults.h:37
static const T zero
Definition: Defaults.h:39
dealii includes
Definition: AtomFieldDataSpherical.cpp:31