00001
00002 #ifndef SIMSVC_REGIONCUTS_H
00003 #define SIMSVC_REGIONCUTS_H 1
00004
00005
00006 #include <string>
00007 #include <vector>
00008
00015 class RegionCuts {
00016 public:
00018 RegionCuts( ):
00019 m_regionName("unknown"),
00020 m_volumes(),
00021 m_gammacut(-1.0),
00022 m_electroncut(-1.0),
00023 m_positroncut(-1.0),
00024 m_protoncut(-1.0),
00025 m_aprotoncut(-1.0),
00026 m_neutroncut(-1.0),
00027 m_aneutroncut(-1.0)
00028 {};
00029
00031 RegionCuts(std::string name,
00032 std::vector<std::string> volumes,
00033 double gammacut,
00034 double electroncut,
00035 double positroncut,
00036 double protoncut,
00037 double aprotoncut,
00038 double neutroncut,
00039 double aneutroncut):
00040 m_regionName(name),
00041 m_volumes(volumes),
00042 m_gammacut(gammacut),
00043 m_electroncut(electroncut),
00044 m_positroncut(positroncut),
00045 m_protoncut(protoncut),
00046 m_aprotoncut(-aprotoncut),
00047 m_neutroncut(neutroncut),
00048 m_aneutroncut(aneutroncut)
00049 {};
00050
00051 const std::string& region() const
00052 {
00053 return m_regionName;
00054 }
00055
00056 const std::vector<std::string>& volumes() const
00057 {
00058 return m_volumes;
00059 }
00060
00061 const double gammaCut() const
00062 {
00063 return m_gammacut;
00064 }
00065 const double electronCut() const
00066 {
00067 return m_electroncut;
00068 }
00069 const double positronCut() const
00070 {
00071 return m_positroncut;
00072 }
00073 const double protonCut() const
00074 {
00075 return m_protoncut;
00076 }
00077 const double antiProtonCut() const
00078 {
00079 return m_aprotoncut;
00080 }
00081 const double neutronCut() const
00082 {
00083 return m_neutroncut;
00084 }
00085 const double antiNeutronCut() const
00086 {
00087 return m_aneutroncut;
00088 }
00089
00090 private:
00091
00092 std::string m_regionName;
00093 std::vector<std::string> m_volumes;
00094
00095 double m_gammacut;
00096 double m_electroncut;
00097 double m_positroncut;
00098 double m_protoncut;
00099 double m_aprotoncut;
00100 double m_neutroncut;
00101 double m_aneutroncut;
00102
00103 };
00104 #endif // SIMSVC_REGIONCUTS_H