Tags.hpp
1 // Distributed under the MIT License.
2 // See LICENSE.txt for details.
3 
4 #pragma once
5 
6 #include <cstddef>
7 #include <string>
8 
9 /// Namespace for neutrino physics
10 namespace neutrinos {
11 template <size_t EnergyBin>
13  static constexpr size_t energy_bin = EnergyBin;
14 };
15 template <size_t EnergyBin>
17  static constexpr size_t energy_bin = EnergyBin;
18 };
19 template <size_t EnergyBin>
21  static constexpr size_t energy_bin = EnergyBin;
22 };
23 
24 template <template <size_t> class U, size_t EnergyBin>
25 std::string get_name(const U<EnergyBin>& /*species*/) noexcept {
26  return pretty_type::short_name<U<EnergyBin>>() + std::to_string(EnergyBin);
27 }
28 
29 } // namespace neutrinos
Definition: Tags.hpp:16
Definition: Tags.hpp:20
Namespace for neutrino physics.
Definition: Tags.hpp:10
Definition: Tags.hpp:12