CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_1/src/DataFormats/Provenance/interface/FileFormatVersion.h

Go to the documentation of this file.
00001 #ifndef DataFormats_Provenance_FileFormatVersion_h
00002 #define DataFormats_Provenance_FileFormatVersion_h
00003 
00004 #include <iosfwd>
00005 
00006 namespace edm 
00007 {
00008   class FileFormatVersion {
00009   public:
00010     FileFormatVersion() : value_(-1) { }
00011     explicit FileFormatVersion(int vers) : value_(vers)  { }
00012     ~FileFormatVersion() {}
00013     bool isValid() const;
00014     bool productIDIsInt() const;
00015     bool lumiNumbers() const;
00016     bool newAuxiliary() const;
00017     bool runsAndLumis() const;
00018     bool eventHistoryBranch() const;
00019     bool eventHistoryTree() const;
00020     bool perEventProductIDs() const;
00021     bool splitProductIDs() const;
00022     bool fastCopyPossible() const;
00023     bool parameterSetsByReference() const;
00024     bool triggerPathsTracked() const;
00025     bool lumiInEventID() const;
00026     bool parameterSetsTree() const;
00027     bool processHistorySameWithinRun() const;
00028     bool hasIndexIntoFile() const;
00029     bool mergeOnlySequentialRunsOrLumis() const;
00030     bool noMetaDataTrees() const;
00031     bool storedProductProvenanceUsed() const;
00032     bool useReducedProcessHistoryID() const;
00033     int value() const {return value_;}
00034     
00035    private:
00036     int value_;
00037   };
00038 
00039   std::ostream&
00040   operator<< (std::ostream& os, FileFormatVersion const& ff);
00041 
00042 }
00043 #endif