// SimpleDatasetMergerCreator.cxx #include "dataset_split/SimpleDatasetMergerCreator.h" #include #include "dataset_util/XmlElement.h" #include "dataset_util/DtdRegistry.h" #include "dataset_split/SimpleDatasetMerger.h" using std::string; using std::ostream; using std::auto_ptr; using dset::DatasetMerger; using dset::DatasetMergerCreator; using dset::SimpleDatasetMerger; using dset::SimpleDatasetMergerCreator; //********************************************************************** // Local definitions. //********************************************************************** namespace { // Creator. const DatasetMergerCreator* create(const XmlElement& ele) { assert( ele.name() == SimpleDatasetMergerCreator::xml_name() ); if ( ele.name() != SimpleDatasetMergerCreator::xml_name() ) return 0; return new SimpleDatasetMergerCreator; } // Register creator. int SimpleDatasetMergerCreator_xml_stat = DatasetMergerCreator::register_creator( SimpleDatasetMergerCreator::xml_name(), create); // Register the DTD. DtdRegistry::Status SimpleDatasetMerger_dtd_stat = DtdRegistry::register_dtd("dataset"); } // end unnamed namespace. //********************************************************************** // Static member functions //********************************************************************** // DTD const Text& SimpleDatasetMergerCreator::dtd() { static Text txt; if ( txt.size() == 0 ) { txt.append(""); } return txt; } //********************************************************************** // Member functions //********************************************************************** // Validity bool SimpleDatasetMergerCreator::is_valid() const { return true; } //********************************************************************** // Return a new merger instance. DatasetMerger* SimpleDatasetMergerCreator::create(string) const { return new SimpleDatasetMerger; } //********************************************************************** // Write to XML. const XmlElement* SimpleDatasetMergerCreator::xml() const { auto_ptr pele(new XmlElement(SimpleDatasetMergerCreator::xml_name())); return pele.release(); } //********************************************************************** // Output stream. ostream& SimpleDatasetMergerCreator::ostr(std::ostream& str) const { str << "Simple dataset merger creator"; return str; } //**********************************************************************