Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:29:41

0001 #ifndef CROSSING_FRAME_PLAYBACKINFOEXTENDED_H
0002 #define CROSSING_FRAME_PLAYBACKINFOEXTENDED_H
0003 
0004 /** \class CrossingFramePlaybackInfoExtended
0005  *
0006  * CrossingFramePlaybackInfoExtended is written by the Sim Mixing Module
0007  * it contains information to allow a 'playback' of the MixingModule
0008  * i.e to find again, on an event/event basis, exactly the same events to superpose
0009  *
0010  * \author Ursula Berthon, Claude Charlot,  LLR Palaiseau
0011  *
0012  * \version   1st Version Nov 2007
0013  *
0014  ************************************************************/
0015 
0016 #include "DataFormats/Provenance/interface/EventID.h"
0017 #include <vector>
0018 #include <utility>
0019 
0020 #include <iostream>
0021 
0022 class CrossingFramePlaybackInfoExtended {
0023 public:
0024   // con- and destructors
0025 
0026   CrossingFramePlaybackInfoExtended() {}
0027   ~CrossingFramePlaybackInfoExtended() {}
0028 
0029   // no setters needed, as this class is just used for backward compatibility
0030   // getters
0031   std::vector<edm::EventID> getStartEventId(const unsigned int s, const int bcr) const {
0032     return (idFirstPileup_[s])[bcr - minBunch_];
0033   }
0034 
0035   void getEventStartInfo(std::vector<std::vector<edm::EventID> > &ids, const unsigned int s) const {
0036     ids = idFirstPileup_[s];
0037   }
0038 
0039 private:
0040   // we need the same info for each bunchcrossing
0041   unsigned int maxNbSources_;
0042 
0043   std::vector<std::vector<std::vector<edm::EventID> > > idFirstPileup_;
0044 
0045   int nBcrossings_;
0046   int minBunch_;
0047 };
0048 
0049 #endif