FairRoot
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
PixelAltDigiWriteToRootVector.h
Go to the documentation of this file.
1 /********************************************************************************
2  * Copyright (C) 2014 GSI Helmholtzzentrum fuer Schwerionenforschung GmbH *
3  * *
4  * This software is distributed under the terms of the *
5  * GNU Lesser General Public Licence (LGPL) version 3, *
6  * copied verbatim in the file "LICENSE" *
7  ********************************************************************************/
8 /*
9  * PixelWriteToFile.h
10  *
11  * Created on: 19.02.2016
12  * Author: R. Karabowicz
13  */
14 
15 #ifndef PIXELALTDIGIWRITETOROOTVECTOR_H
16 #define PIXELALTDIGIWRITETOROOTVECTOR_H 1
17 
18 #include "FairTask.h"
19 #include "PixelPayload.h"
20 
21 #include <Rtypes.h>
22 #include <TString.h>
23 #include <vector>
24 
25 class TClonesArray;
26 class TFile;
27 class TTree;
28 
30 {
31  public:
34 
36  PixelAltDigiWriteToRootVector(Int_t iVerbose);
37 
39  PixelAltDigiWriteToRootVector(const char* name, Int_t iVerbose);
40 
43 
45  virtual void Exec(Option_t* opt);
46 
47  void SetOutputFileName(TString tstr) { fOutputFileName = tstr; };
48 
49  void SetDivideLevel(Int_t idiv) { fDivideLevel = idiv; } // 0 - event, 1 - station, 2 - sensor
50 
51  private:
52  TClonesArray* fDigis;
54  TFile* fOutputRootFile[12];
55  TTree* fOutputRootTree[12];
56  PixelPayload::EventHeader* fPixelEventHeader;
57  std::vector<PixelPayload::Digi> fPixelDigiVector;
58 
59  TString fOutputFileName;
60  Int_t fNofOutputFiles;
61 
63  virtual void SetParContainers();
64 
65  Int_t fDivideLevel;
66 
67  Int_t fRunId;
68  Int_t fMCEntryNo;
69  Int_t fPartNo;
70 
72  virtual InitStatus Init();
73 
75  virtual InitStatus ReInit();
76 
78  void Reset();
79 
81  virtual void Finish();
82 
85 
86  ClassDef(PixelAltDigiWriteToRootVector, 1);
87 };
88 
89 #endif
InitStatus
Definition: FairTask.h:33