CMS 3D CMS Logo

DAQFlagXML.h

Go to the documentation of this file.
00001 // Author : Samvel Khalatian (samvel at fnal dot gov)
00002 // Created: 07/27/07
00003 // License: GPL
00004 
00005 #ifndef DAQ_FLAG_XML_H
00006 #define DAQ_FLAG_XML_H
00007 
00008 #include <iosfwd>
00009 
00010 #include <boost/serialization/nvp.hpp>
00011 #include <boost/serialization/export.hpp>
00012 #include <boost/serialization/version.hpp>
00013 
00014 #include "CalibTracker/SiStripRunSummary/interface/FlagXML.h"
00015 #include "CalibTracker/SiStripRunSummary/interface/ClassIDBase.h"
00016 
00022 class DAQFlagTxt;
00023 
00035 class DAQFlagXML: public FlagXML {
00036   public:
00037     DAQFlagXML() {}
00038     
00045     DAQFlagXML( const DAQFlagTxt *poDAQ_FLAGTXT);
00046 
00047   protected:
00056     inline virtual Clonable *clone() const {
00057       return new DAQFlagXML( *this);
00058     }
00059 
00068     virtual Clonable *cloneTxt() const;
00069 
00077     virtual ClassIDBase::ID getID() const;
00078 
00088     virtual int isChildValid( const FlagXML *poCHILD_CANDIDATE) const;
00089 
00090   private:
00096     friend class boost::serialization::access;
00097 
00098     template<class Archive>
00099       void serialize( Archive &roArchive, const unsigned int &rnVERSION) {
00100         roArchive & BOOST_SERIALIZATION_BASE_OBJECT_NVP( FlagXML);
00101       }
00106 };
00107 
00120 std::ostream &
00121   operator <<( std::ostream &roOut, const DAQFlagXML &roFLAG);
00122 
00129 BOOST_CLASS_EXPORT_GUID( DAQFlagXML, "DAQFlagXML")
00130 
00131 
00140 BOOST_CLASS_VERSION( DAQFlagXML, 0)
00141 
00142 #endif // DAQ_FLAG_XML_H

Generated on Tue Jun 9 17:25:52 2009 for CMSSW by  doxygen 1.5.4