CMS 3D CMS Logo

GlobalFlagTxt.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 GLOBAL_FLAG_TXT_H
00006 #define GLOBAL_FLAG_TXT_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/FlagTxt.h"
00015 #include "CalibTracker/SiStripRunSummary/interface/ClassIDBase.h"
00016 
00023 class GlobalFlagXML;
00024 
00036 class GlobalFlagTxt: public FlagTxt {
00037   public:
00038     GlobalFlagTxt() {}
00039 
00046     GlobalFlagTxt( const GlobalFlagXML *poGLOBAL_FLAGXML);
00047 
00048   protected:
00057     inline virtual Clonable *clone() const {
00058       return new GlobalFlagTxt( *this);
00059     }
00060 
00069     virtual Clonable *cloneXML() const;
00070 
00078     ClassIDBase::ID getID() const;
00079 
00089     virtual int isChildValid( const FlagTxt *poCHILD_CANDIDATE) const;
00090 
00091   private:
00097     friend class boost::serialization::access;
00098 
00099     template<class Archive>
00100       void serialize( Archive &roArchive, const unsigned int &rnVERSION) {
00101         roArchive & boost::serialization::base_object<FlagTxt>( *this);
00102       }
00107 };
00108 
00121 std::ostream &
00122   operator <<( std::ostream &roOut, const GlobalFlagTxt &roFLAG);
00123 
00130 BOOST_CLASS_EXPORT_GUID( GlobalFlagTxt, "GlobalFlagTxt")
00131 
00132 
00141 BOOST_CLASS_VERSION( GlobalFlagTxt, 0)
00142 
00143 #endif // GLOBAL_FLAG_TXT_H

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