CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
PileUpSimulator.h
Go to the documentation of this file.
1 #ifndef FastSimulation_PileUpProducer_PileUpSimulator_H
2 #define FastSimulation_PileUpProducer_PileUpSimulator_H
3 
12 //#include "FWCore/ParameterSet/interface/ParameterSet.h"
13 
14 #include <vector>
15 #include <string>
16 #include <fstream>
17 
18 class TFile;
19 class TTree;
20 class TBranch;
21 class PUEvent;
22 
23 namespace edm {
24  class ParameterSet;
25 }
26 
27 namespace HepMC {
28  class GenEvent;
29 }
30 
31 class FSimEvent;
32 
34 {
35  public:
36 
38  PileUpSimulator(FSimEvent* aSimEvent);
39 
42 
44  void produce(const HepMC::GenEvent* pu);
45 
46  private:
47 
50  std::vector<std::string> theFileNames;
51  std::string inputFile;
52  unsigned theNumberOfFiles;
53 
54  std::vector<TFile*> theFiles;
55  std::vector<TTree*> theTrees;
56  std::vector<TBranch*> theBranches;
57  std::vector<PUEvent*> thePUEvents;
58  std::vector<unsigned> theCurrentEntry;
59  std::vector<unsigned> theCurrentMinBiasEvt;
60  std::vector<unsigned> theNumberOfEntries;
61  std::vector<unsigned> theNumberOfMinBiasEvts;
62 
63  std::ofstream myOutputFile;
64  unsigned myOutputBuffer;
65 
66 };
67 #endif
std::vector< unsigned > theNumberOfEntries
std::vector< TTree * > theTrees
std::string inputFile
std::ofstream myOutputFile
PileUpSimulator(FSimEvent *aSimEvent)
Constructor.
FSimEvent * mySimEvent
std::vector< PUEvent * > thePUEvents
std::vector< std::string > theFileNames
unsigned myOutputBuffer
unsigned theNumberOfFiles
std::vector< TBranch * > theBranches
std::vector< unsigned > theCurrentMinBiasEvt
void produce(const HepMC::GenEvent *pu)
Produce N minimum bias events, and add them to the FSimEvent.
~PileUpSimulator()
Default Destructor.
std::vector< TFile * > theFiles
Definition: PUEvent.h:6
std::vector< unsigned > theNumberOfMinBiasEvts
std::vector< unsigned > theCurrentEntry