// DatasetMerger_t.h #ifndef dset__DatasetMerger_t_H #define dset__DatasetMerger_t_H // Test class for DatasetMerger. // Returns a clone of the first dataset. #include "dataset_split/DatasetMerger.h" class TestDatasetMerger : public dset::DatasetMerger { private: // data dset::DatasetList m_dsts; public: // functions // Constructor. // Argument is the numnber of copies to return when splitting. explicit TestDatasetMerger() { } // Validity. bool is_valid() const { return true; } // Open. bool is_open() const { return true; } // Append. int append(const dset::Dataset& dst) { m_dsts.push_back(&dst); return 0; } // Return result. dset::DatasetMergeResult result() { dset::DatasetList empty; dset::Dataset* pdst = 0; return dset::DatasetMergeResult(m_dsts, empty, empty, pdst); } // Close. int close() { return 0; } // XML. const XmlElement* xml() const { XmlElement* pele = new XmlElement("TestDatasetMerger"); return pele; } // Output stream. std::ostream& ostr(std::ostream& str) const { str << "TestDatasetMerger"; return str; } }; #endif