Commit a77163721edb00be76f14e2e1b2dedfa639dbbeb

Authored by Jürgen Knödlseder
1 parent 85e462cd

Use GEnergies container instead of GEnergy vector.

include/GModelSpatialDiffuseCube.hpp
@@ -38,6 +38,7 @@ @@ -38,6 +38,7 @@
38 #include "GNodeArray.hpp" 38 #include "GNodeArray.hpp"
39 #include "GXmlElement.hpp" 39 #include "GXmlElement.hpp"
40 #include "GEbounds.hpp" 40 #include "GEbounds.hpp"
  41 +#include "GEnergies.hpp"
41 42
42 43
43 /***********************************************************************//** 44 /***********************************************************************//**
@@ -58,9 +59,9 @@ public: @@ -58,9 +59,9 @@ public:
58 explicit GModelSpatialDiffuseCube(const GXmlElement& xml); 59 explicit GModelSpatialDiffuseCube(const GXmlElement& xml);
59 explicit GModelSpatialDiffuseCube(const std::string& filename, 60 explicit GModelSpatialDiffuseCube(const std::string& filename,
60 const double& value = 1.0); 61 const double& value = 1.0);
61 - explicit GModelSpatialDiffuseCube(const GSkymap& cube,  
62 - const std::vector<GEnergy>& energies,  
63 - const double& value = 1.0); 62 + explicit GModelSpatialDiffuseCube(const GSkymap& cube,
  63 + const GEnergies& energies,
  64 + const double& value = 1.0);
64 GModelSpatialDiffuseCube(const GModelSpatialDiffuseCube& model); 65 GModelSpatialDiffuseCube(const GModelSpatialDiffuseCube& model);
65 virtual ~GModelSpatialDiffuseCube(void); 66 virtual ~GModelSpatialDiffuseCube(void);
66 67
@@ -90,8 +91,8 @@ public: @@ -90,8 +91,8 @@ public:
90 void filename(const std::string& filename); 91 void filename(const std::string& filename);
91 const GSkymap& cube(void) const; 92 const GSkymap& cube(void) const;
92 void cube(const GSkymap& cube); 93 void cube(const GSkymap& cube);
93 - std::vector<GEnergy> energies(void);  
94 - void energies(const std::vector<GEnergy>& energies); 94 + GEnergies energies(void);
  95 + void energies(const GEnergies& energies);
95 const GModelSpectralNodes& spectrum(void) const; 96 const GModelSpectralNodes& spectrum(void) const;
96 void set_mc_cone(const GSkyDir& centre, 97 void set_mc_cone(const GSkyDir& centre,
97 const double& radius); 98 const double& radius);
pyext/GModelSpatialDiffuseCube.i
@@ -42,9 +42,9 @@ public: @@ -42,9 +42,9 @@ public:
42 explicit GModelSpatialDiffuseCube(const GXmlElement& xml); 42 explicit GModelSpatialDiffuseCube(const GXmlElement& xml);
43 explicit GModelSpatialDiffuseCube(const std::string& filename, 43 explicit GModelSpatialDiffuseCube(const std::string& filename,
44 const double& value = 1.0); 44 const double& value = 1.0);
45 - explicit GModelSpatialDiffuseCube(const GSkymap& map,  
46 - const std::vector<GEnergy>& energies,  
47 - const double& value = 1.0); 45 + explicit GModelSpatialDiffuseCube(const GSkymap& map,
  46 + const GEnergies& energies,
  47 + const double& value = 1.0);
48 GModelSpatialDiffuseCube(const GModelSpatialDiffuseCube& model); 48 GModelSpatialDiffuseCube(const GModelSpatialDiffuseCube& model);
49 virtual ~GModelSpatialDiffuseCube(void); 49 virtual ~GModelSpatialDiffuseCube(void);
50 50
@@ -70,8 +70,8 @@ public: @@ -70,8 +70,8 @@ public:
70 void filename(const std::string& filename); 70 void filename(const std::string& filename);
71 const GSkymap& cube(void) const; 71 const GSkymap& cube(void) const;
72 void cube(const GSkymap& cube); 72 void cube(const GSkymap& cube);
73 - std::vector<GEnergy> energies(void);  
74 - void energies(const std::vector<GEnergy>& energies); 73 + GEnergies energies(void);
  74 + void energies(const GEnergies& energies);
75 const GModelSpectralNodes& spectrum(void) const; 75 const GModelSpectralNodes& spectrum(void) const;
76 void set_mc_cone(const GSkyDir& centre, 76 void set_mc_cone(const GSkyDir& centre,
77 const double& radius); 77 const double& radius);
src/model/GModelSpatialDiffuseCube.cpp
@@ -49,8 +49,7 @@ const GModelSpatialRegistry g_spatial_cube_registry(&amp;g_spatial_cube_seed); @@ -49,8 +49,7 @@ const GModelSpatialRegistry g_spatial_cube_registry(&amp;g_spatial_cube_seed);
49 #define G_READ "GModelSpatialDiffuseCube::read(GXmlElement&)" 49 #define G_READ "GModelSpatialDiffuseCube::read(GXmlElement&)"
50 #define G_WRITE "GModelSpatialDiffuseCube::write(GXmlElement&)" 50 #define G_WRITE "GModelSpatialDiffuseCube::write(GXmlElement&)"
51 #define G_LOAD "GModelSpatialDiffuseCube::load(std::string&)" 51 #define G_LOAD "GModelSpatialDiffuseCube::load(std::string&)"
52 -#define G_ENERGIES "GModelSpatialDiffuseCube::energies(std::vector"\  
53 - "<GEnergy>&)" 52 +#define G_ENERGIES "GModelSpatialDiffuseCube::energies(GEnergies&)"
54 53
55 /* __ Macros _____________________________________________________________ */ 54 /* __ Macros _____________________________________________________________ */
56 55
@@ -144,9 +143,9 @@ GModelSpatialDiffuseCube::GModelSpatialDiffuseCube(const std::string&amp; filename, @@ -144,9 +143,9 @@ GModelSpatialDiffuseCube::GModelSpatialDiffuseCube(const std::string&amp; filename,
144 * constructor also assigns the energy values for all maps and sets the 143 * constructor also assigns the energy values for all maps and sets the
145 * scaling @p value. The filename will remain blank. 144 * scaling @p value. The filename will remain blank.
146 ***************************************************************************/ 145 ***************************************************************************/
147 -GModelSpatialDiffuseCube::GModelSpatialDiffuseCube(const GSkymap& cube,  
148 - const std::vector<GEnergy>& energies,  
149 - const double& value) : 146 +GModelSpatialDiffuseCube::GModelSpatialDiffuseCube(const GSkymap& cube,
  147 + const GEnergies& energies,
  148 + const double& value) :
150 GModelSpatialDiffuse() 149 GModelSpatialDiffuse()
151 { 150 {
152 // Initialise members 151 // Initialise members
@@ -676,7 +675,7 @@ void GModelSpatialDiffuseCube::load(const std::string&amp; filename) @@ -676,7 +675,7 @@ void GModelSpatialDiffuseCube::load(const std::string&amp; filename)
676 * 675 *
677 * Sets the energies for the map cube. 676 * Sets the energies for the map cube.
678 ***************************************************************************/ 677 ***************************************************************************/
679 -void GModelSpatialDiffuseCube::energies(const std::vector<GEnergy>& energies) 678 +void GModelSpatialDiffuseCube::energies(const GEnergies& energies)
680 { 679 {
681 // Initialise energies 680 // Initialise energies
682 m_logE.clear(); 681 m_logE.clear();
@@ -717,10 +716,10 @@ void GModelSpatialDiffuseCube::energies(const std::vector&lt;GEnergy&gt;&amp; energies) @@ -717,10 +716,10 @@ void GModelSpatialDiffuseCube::energies(const std::vector&lt;GEnergy&gt;&amp; energies)
717 * 716 *
718 * Returns the energies for the map cube in a vector. 717 * Returns the energies for the map cube in a vector.
719 ***************************************************************************/ 718 ***************************************************************************/
720 -std::vector<GEnergy> GModelSpatialDiffuseCube::energies(void) 719 +GEnergies GModelSpatialDiffuseCube::energies(void)
721 { 720 {
722 - // Initialise vector of energies  
723 - std::vector<GEnergy> energies; 721 + // Initialise energies container
  722 + GEnergies energies;
724 723
725 // Get number of map energies 724 // Get number of map energies
726 int num = m_logE.size(); 725 int num = m_logE.size();
@@ -735,7 +734,7 @@ std::vector&lt;GEnergy&gt; GModelSpatialDiffuseCube::energies(void) @@ -735,7 +734,7 @@ std::vector&lt;GEnergy&gt; GModelSpatialDiffuseCube::energies(void)
735 for (int i = 0; i < num; ++i) { 734 for (int i = 0; i < num; ++i) {
736 GEnergy energy; 735 GEnergy energy;
737 energy.log10MeV(m_logE[i]); 736 energy.log10MeV(m_logE[i]);
738 - energies.push_back(energy); 737 + energies.append(energy);
739 } 738 }
740 739
741 } // endif: there were maps in the cube 740 } // endif: there were maps in the cube
test/test_GModel.cpp
@@ -550,9 +550,9 @@ void TestGModel::test_diffuse_cube(void) @@ -550,9 +550,9 @@ void TestGModel::test_diffuse_cube(void)
550 test_try("Test skymap value constructor"); 550 test_try("Test skymap value constructor");
551 try { 551 try {
552 GSkymap map("HPX", "GAL", 16, "RING", 10); 552 GSkymap map("HPX", "GAL", 16, "RING", 10);
553 - std::vector<GEnergy> energies; 553 + GEnergies energies;
554 for (int i = 0; i < 10; ++i) { 554 for (int i = 0; i < 10; ++i) {
555 - energies.push_back(GEnergy(double(i+1.0), "MeV")); 555 + energies.append(GEnergy(double(i+1.0), "MeV"));
556 } 556 }
557 GModelSpatialDiffuseCube model(map, energies, 3.0); 557 GModelSpatialDiffuseCube model(map, energies, 3.0);
558 test_value(model.value(), 3.0); 558 test_value(model.value(), 3.0);