Replaced a default parameter with separate method.
authorTeemu Murtola <teemu.murtola@gmail.com>
Sun, 25 Mar 2012 17:43:45 +0000 (20:43 +0300)
committerTeemu Murtola <teemu.murtola@gmail.com>
Sun, 1 Apr 2012 06:04:46 +0000 (09:04 +0300)
Instead of a AnalysisData::setColumns(int, bool=false) method, two
separate methods with more explicit names and no default parameters
should lead to code that is easier to read.

Change-Id: I7765831c5a298c9b7d52dc82747f9615197c62dc

share/template/template.cpp
src/gromacs/analysisdata/analysisdata.cpp
src/gromacs/analysisdata/analysisdata.h
src/gromacs/analysisdata/tests/analysisdata.cpp
src/gromacs/analysisdata/tests/average.cpp
src/gromacs/analysisdata/tests/histogram.cpp
src/gromacs/trajectoryanalysis/modules/angle.cpp
src/gromacs/trajectoryanalysis/modules/distance.cpp
src/gromacs/trajectoryanalysis/modules/select.cpp

index 4b6c6bdccf7e8f817513c7a2920d2dd8873bda44..4e86a0ab28f279011c9198f01977ac78e2583198 100644 (file)
@@ -157,7 +157,7 @@ void
 AnalysisTemplate::initAnalysis(const TrajectoryAnalysisSettings &settings,
                                const TopologyInformation & /*top*/)
 {
-    _data.setColumns(_sel.size());
+    _data.setColumnCount(_sel.size());
     registerAnalysisDataset(&_data, "avedist");
 
     _data.addModule(_avem);
index defec2f5aa55edd6a94a2c68a4f21e32f29ead58..07cb2b94cb2b3bc4ea923e3713df6ae546d3c937 100644 (file)
@@ -78,14 +78,22 @@ AnalysisData::~AnalysisData()
 
 
 void
-AnalysisData::setColumns(int ncol, bool multipoint)
+AnalysisData::setColumnCount(int ncol)
 {
     GMX_RELEASE_ASSERT(ncol > 0, "Number of columns must be positive");
     GMX_RELEASE_ASSERT(impl_->handles_.empty(),
                        "Cannot change data dimensionality after creating handles");
-    setColumnCount(ncol);
-    setMultipoint(multipoint);
-    impl_->storage_.setMultipoint(multipoint);
+    AbstractAnalysisData::setColumnCount(ncol);
+}
+
+
+void
+AnalysisData::setMultipoint(bool bMultipoint)
+{
+    GMX_RELEASE_ASSERT(impl_->handles_.empty(),
+                       "Cannot change data type after creating handles");
+    AbstractAnalysisData::setMultipoint(bMultipoint);
+    impl_->storage_.setMultipoint(bMultipoint);
 }
 
 
index 1acd88bdd3375dc972c964930d0bae17e2c58d68..a53923b94c73bac19bfe6347e667d4eea1751ddb 100644 (file)
@@ -71,11 +71,15 @@ class AnalysisData : public AbstractAnalysisData
         virtual ~AnalysisData();
 
         /*! \brief
-         * Sets the number of columns in the data and type of the data.
+         * Sets the number of columns in the data.
+         */
+        void setColumnCount(int ncol);
+        /*! \brief
+         * Sets whether the data contains multiple points per column per frame.
          *
          * \see isMultipoint()
          */
-        void setColumns(int ncol, bool multipoint = false);
+        void setMultipoint(bool bMultipoint);
 
         /*! \brief
          * Create a handle for adding data.
index 15437c8da3bc205cf67f8579d93b9e78091fff9c..8ff03f355a3ccd5f71c73fcdc9d8ccfef8bb2de3 100644 (file)
@@ -71,17 +71,18 @@ TEST(AnalysisDataInitializationTest, BasicInitialization)
     EXPECT_FALSE(data.isMultipoint());
     EXPECT_EQ(0, data.frameCount());
 
-    data.setColumns(1);
+    data.setColumnCount(1);
     EXPECT_EQ(1, data.columnCount());
     EXPECT_FALSE(data.isMultipoint());
 
-    data.setColumns(3, true);
+    data.setColumnCount(3);
+    data.setMultipoint(true);
     EXPECT_EQ(3, data.columnCount());
     EXPECT_TRUE(data.isMultipoint());
 
-    data.setColumns(1);
+    data.setColumnCount(1);
     EXPECT_EQ(1, data.columnCount());
-    EXPECT_FALSE(data.isMultipoint());
+    EXPECT_TRUE(data.isMultipoint());
 }
 
 /*
@@ -91,7 +92,7 @@ TEST(AnalysisDataInitializationTest, BasicInitialization)
 TEST(AnalysisDataInitializationTest, ChecksMultiColumnModules)
 {
     gmx::AnalysisData data;
-    data.setColumns(2);
+    data.setColumnCount(2);
 
     MockAnalysisModulePointer mod1(new MockAnalysisModule(0));
     EXPECT_THROW(data.addModule(mod1), gmx::APIError);
@@ -108,7 +109,8 @@ TEST(AnalysisDataInitializationTest, ChecksMultiColumnModules)
 TEST(AnalysisDataInitializationTest, ChecksMultiPointModules)
 {
     gmx::AnalysisData data;
-    data.setColumns(1, true);
+    data.setColumnCount(1);
+    data.setMultipoint(true);
 
     MockAnalysisModulePointer mod1(new MockAnalysisModule(0));
     EXPECT_THROW(data.addModule(mod1), gmx::APIError);
@@ -140,7 +142,7 @@ TEST_F(AnalysisDataTest, CallsModuleCorrectly)
 {
     gmx::test::AnalysisDataTestInput input(inputdata);
     gmx::AnalysisData data;
-    data.setColumns(input.columnCount());
+    data.setColumnCount(input.columnCount());
 
     ASSERT_NO_THROW(addStaticCheckerModule(input, &data));
     ASSERT_NO_THROW(addStaticCheckerModule(input, &data));
@@ -156,7 +158,7 @@ TEST_F(AnalysisDataTest, CallsColumnModuleCorrectly)
 {
     gmx::test::AnalysisDataTestInput input(inputdata);
     gmx::AnalysisData data;
-    data.setColumns(input.columnCount());
+    data.setColumnCount(input.columnCount());
 
     ASSERT_NO_THROW(addStaticColumnCheckerModule(input, 0, 2, &data));
     ASSERT_NO_THROW(addStaticColumnCheckerModule(input, 2, 1, &data));
@@ -171,7 +173,7 @@ TEST_F(AnalysisDataTest, CallsModuleCorrectlyWithOutOfOrderFrames)
 {
     gmx::test::AnalysisDataTestInput input(inputdata);
     gmx::AnalysisData data;
-    data.setColumns(input.columnCount());
+    data.setColumnCount(input.columnCount());
 
     ASSERT_NO_THROW(addStaticCheckerModule(input, &data));
     ASSERT_NO_THROW(addStaticColumnCheckerModule(input, 1, 2, &data));
@@ -195,7 +197,7 @@ TEST_F(AnalysisDataTest, FullStorageWorks)
 {
     gmx::test::AnalysisDataTestInput input(inputdata);
     gmx::AnalysisData data;
-    data.setColumns(input.columnCount());
+    data.setColumnCount(input.columnCount());
 
     ASSERT_NO_THROW(addStaticStorageCheckerModule(input, -1, &data));
     ASSERT_NO_THROW(presentAllData(input, &data));
@@ -209,7 +211,7 @@ TEST_F(AnalysisDataTest, CanAddModuleAfterStoredData)
 {
     gmx::test::AnalysisDataTestInput input(inputdata);
     gmx::AnalysisData data;
-    data.setColumns(input.columnCount());
+    data.setColumnCount(input.columnCount());
     ASSERT_TRUE(data.requestStorage(-1));
 
     ASSERT_NO_THROW(presentAllData(input, &data));
@@ -224,7 +226,7 @@ TEST_F(AnalysisDataTest, LimitedStorageWorks)
 {
     gmx::test::AnalysisDataTestInput input(inputdata);
     gmx::AnalysisData data;
-    data.setColumns(input.columnCount());
+    data.setColumnCount(input.columnCount());
 
     ASSERT_NO_THROW(addStaticStorageCheckerModule(input, 1, &data));
     ASSERT_NO_THROW(presentAllData(input, &data));
@@ -246,7 +248,8 @@ TEST_F(AnalysisDataTest, MultipointCallsModuleCorrectly)
 {
     gmx::test::AnalysisDataTestInput input(multipointinputdata);
     gmx::AnalysisData data;
-    data.setColumns(input.columnCount(), true);
+    data.setColumnCount(input.columnCount());
+    data.setMultipoint(true);
 
     ASSERT_NO_THROW(addStaticCheckerModule(input, &data));
     ASSERT_NO_THROW(addStaticCheckerModule(input, &data));
@@ -262,7 +265,8 @@ TEST_F(AnalysisDataTest, MultipointCallsColumnModuleCorrectly)
 {
     gmx::test::AnalysisDataTestInput input(multipointinputdata);
     gmx::AnalysisData data;
-    data.setColumns(input.columnCount(), true);
+    data.setColumnCount(input.columnCount());
+    data.setMultipoint(true);
 
     ASSERT_NO_THROW(addStaticColumnCheckerModule(input, 0, 2, &data));
     ASSERT_NO_THROW(addStaticColumnCheckerModule(input, 2, 1, &data));
index 61a41c30b754fb76247e0c88a4e61e7b99c45936..077acf616b6261e0915eaa292d3b223e442086c8 100644 (file)
@@ -71,7 +71,7 @@ TEST_F(AverageModuleTest, BasicTest)
 {
     gmx::test::AnalysisDataTestInput input(inputdata);
     gmx::AnalysisData data;
-    data.setColumns(input.columnCount());
+    data.setColumnCount(input.columnCount());
     gmx::AnalysisDataAverageModulePointer module(
             new gmx::AnalysisDataAverageModule);
     data.addModule(module);
@@ -86,7 +86,7 @@ TEST_F(AverageModuleTest, CanCustomizeXAxis)
 {
     gmx::test::AnalysisDataTestInput input(inputdata);
     gmx::AnalysisData data;
-    data.setColumns(input.columnCount());
+    data.setColumnCount(input.columnCount());
     gmx::AnalysisDataAverageModulePointer module(new gmx::AnalysisDataAverageModule());
     data.addModule(module);
     module->setXAxis(0.5, 0.5);
index 3ca4f3f528390a32e1181b2442b49265d33e5768..9943e56b76338437e2359cdb9c3b8e6bab8d98a3 100644 (file)
@@ -158,7 +158,8 @@ TEST_F(SimpleHistogramModuleTest, ComputesCorrectly)
 {
     gmx::test::AnalysisDataTestInput input(simpleinputdata);
     gmx::AnalysisData data;
-    data.setColumns(input.columnCount(), true);
+    data.setColumnCount(input.columnCount());
+    data.setMultipoint(true);
     gmx::AnalysisDataSimpleHistogramModulePointer module(
         new gmx::AnalysisDataSimpleHistogramModule(
                 gmx::histogramFromRange(1.0, 3.0).binCount(4)));
@@ -178,7 +179,8 @@ TEST_F(SimpleHistogramModuleTest, ComputesCorrectlyWithAll)
 {
     gmx::test::AnalysisDataTestInput input(simpleinputdata);
     gmx::AnalysisData data;
-    data.setColumns(input.columnCount(), true);
+    data.setColumnCount(input.columnCount());
+    data.setMultipoint(true);
     gmx::AnalysisDataSimpleHistogramModulePointer module(
             new gmx::AnalysisDataSimpleHistogramModule(
                     gmx::histogramFromRange(1.0, 3.0).binCount(4).includeAll()));
@@ -212,7 +214,8 @@ TEST_F(WeightedHistogramModuleTest, ComputesCorrectly)
 {
     gmx::test::AnalysisDataTestInput input(weightedinputdata);
     gmx::AnalysisData data;
-    data.setColumns(input.columnCount(), true);
+    data.setColumnCount(input.columnCount());
+    data.setMultipoint(true);
     gmx::AnalysisDataWeightedHistogramModulePointer module(
         new gmx::AnalysisDataWeightedHistogramModule(
                 gmx::histogramFromRange(1.0, 3.0).binCount(4)));
@@ -232,7 +235,8 @@ TEST_F(WeightedHistogramModuleTest, ComputesCorrectlyWithAll)
 {
     gmx::test::AnalysisDataTestInput input(weightedinputdata);
     gmx::AnalysisData data;
-    data.setColumns(input.columnCount(), true);
+    data.setColumnCount(input.columnCount());
+    data.setMultipoint(true);
     gmx::AnalysisDataWeightedHistogramModulePointer module(
             new gmx::AnalysisDataWeightedHistogramModule(
                     gmx::histogramFromRange(1.0, 3.0).binCount(4).includeAll()));
@@ -258,7 +262,8 @@ TEST_F(BinAverageModuleTest, ComputesCorrectly)
 {
     gmx::test::AnalysisDataTestInput input(weightedinputdata);
     gmx::AnalysisData data;
-    data.setColumns(input.columnCount(), true);
+    data.setColumnCount(input.columnCount());
+    data.setMultipoint(true);
     gmx::AnalysisDataBinAverageModulePointer module(
         new gmx::AnalysisDataBinAverageModule(
                 gmx::histogramFromRange(1.0, 3.0).binCount(4)));
@@ -275,7 +280,8 @@ TEST_F(BinAverageModuleTest, ComputesCorrectlyWithAll)
 {
     gmx::test::AnalysisDataTestInput input(weightedinputdata);
     gmx::AnalysisData data;
-    data.setColumns(input.columnCount(), true);
+    data.setColumnCount(input.columnCount());
+    data.setMultipoint(true);
     gmx::AnalysisDataBinAverageModulePointer module(
             new gmx::AnalysisDataBinAverageModule(
                     gmx::histogramFromRange(1.0, 3.0).binCount(4).includeAll()));
index 63b32f972b64ebe92846f3cc736e878876b4faf4..6c1a5812656e603d328cc9101ce6eb39c0abdddc 100644 (file)
@@ -330,7 +330,7 @@ Angle::initAnalysis(const TrajectoryAnalysisSettings &settings,
 
     if (_bMulti)
     {
-        _data.setColumns(_sel1.size());
+        _data.setColumnCount(_sel1.size());
     }
     else if (_bAll)
     {
@@ -339,11 +339,11 @@ Angle::initAnalysis(const TrajectoryAnalysisSettings &settings,
         {
             na /= _natoms1;
         }
-        _data.setColumns(na + 1);
+        _data.setColumnCount(na + 1);
     }
     else
     {
-        _data.setColumns(1);
+        _data.setColumnCount(1);
     }
 
     if (_g2type == "t0")
index a7c338df196f88ae4fc9e4f40e56936f363d5a62..6d313607582edaa1b2a0ac0a0545820ae5d552e7 100644 (file)
@@ -102,7 +102,7 @@ Distance::initAnalysis(const TrajectoryAnalysisSettings &settings,
     {
         GMX_THROW(InvalidInputError("The second selection does not define a single position"));
     }
-    _data.setColumns(4);
+    _data.setColumnCount(4);
     registerAnalysisDataset(&_data, "distance");
 
     _data.addModule(_avem);
index db1ea5aba8b700538bb66658773e54e90ffc5ffc..8a63af9d3fddd845a0e5bffe130c052454a58d7e 100644 (file)
@@ -382,7 +382,7 @@ Select::initAnalysis(const TrajectoryAnalysisSettings &settings,
     }
 
     // TODO: For large systems, a float may not have enough precision
-    _sdata.setColumns(_sel.size());
+    _sdata.setColumnCount(_sel.size());
     registerAnalysisDataset(&_sdata, "size");
     snew(_totsize, _sel.size());
     for (size_t g = 0; g < _sel.size(); ++g)
@@ -400,7 +400,7 @@ Select::initAnalysis(const TrajectoryAnalysisSettings &settings,
         _sdata.addModule(plot);
     }
 
-    _cdata.setColumns(_sel.size());
+    _cdata.setColumnCount(_sel.size());
     registerAnalysisDataset(&_cdata, "cfrac");
     if (!_fnFrac.empty())
     {
@@ -415,7 +415,8 @@ Select::initAnalysis(const TrajectoryAnalysisSettings &settings,
     }
 
     // TODO: For large systems, a float may not have enough precision
-    _idata.setColumns(2, true);
+    _idata.setColumnCount(2);
+    _idata.setMultipoint(true);
     registerAnalysisDataset(&_idata, "index");
     if (!_fnIndex.empty())
     {
@@ -445,7 +446,7 @@ Select::initAnalysis(const TrajectoryAnalysisSettings &settings,
         _idata.addModule(writer);
     }
 
-    _mdata.setColumns(_sel[0].posCount());
+    _mdata.setColumnCount(_sel[0].posCount());
     registerAnalysisDataset(&_mdata, "mask");
     if (!_fnMask.empty())
     {