PandaRoot
PndEmcInspectClusters.h
Go to the documentation of this file.
1 //****************************************************************************
2 //* This file is part of PandaRoot. *
3 //* *
4 //* PandaRoot is distributed under the terms of the *
5 //* GNU General Public License (GPL) version 3, *
6 //* copied verbatim in the file "LICENSE". *
7 //* *
8 //* Copyright (C) 2006 - 2024 FAIR GmbH and copyright holders of PandaRoot *
9 //* The copyright holders are listed in the file "COPYRIGHTHOLDERS". *
10 //* The authors are listed in the file "AUTHORS". *
11 //****************************************************************************
12 
13 //--------------------------------------------------------------------------
14 // File and Version Information:
15 // $Id:$
16 //
17 // Description:
18 // Class PndEmcInspectClusters
19 // Displays clusters and their content.
20 //
21 // Environment:
22 // Software developed for the PANDA experiment at GSI.
23 //
24 // Author List:
25 // Marcel Tiemens
26 //------------------------------------------------------------------------
27 //#pragma once
28 #ifndef PNDEMCINSPECTCLUSTERS_H
29 #define PNDEMCINSPECTCLUSTERS_H
30 
31 // Path of file:
32 // ----- $pandaroot/emc/EmcReco
33 
34 //---------------
35 // C++ Headers --
36 //---------------
37 #include <vector>
38 #include <map>
39 
40 #include "FairTask.h"
41 #include "TObject.h"
42 #include "PndEmcDataTypes.h"
43 #include "TH1.h"
44 #include "TH1I.h"
45 #include "TCanvas.h"
46 #include "TAxis.h"
47 #include "TColor.h"
48 #include "TStyle.h"
49 #include "TStopwatch.h"
50 #include "TClonesArray.h"
51 //#include "PndEmcDigiCalibrator.h"
52 //------------------------------------
53 // Collaborating Class Declarations --
54 //------------------------------------
55 
56 class PndEmcCluster;
57 class PndEmcBump;
58 class PndEmcDigi;
60 
61 class PndEmcGeoPar;
62 class PndEmcDigiPar;
63 class PndEmcRecoPar;
64 
65 class PndEmcSharedDigi;
66 
72 class PndEmcInspectClusters : public FairTask {
73  public:
74  // Constructor
75  PndEmcInspectClusters(Int_t verbose = 0);
76  // Destructor
77  virtual ~PndEmcInspectClusters();
78 
79  // Methods
80  virtual InitStatus Init();
81  virtual void Exec(Option_t *opt);
82  virtual void FinishTask();
83 
84  /*
85  private:
86  // don't allow copying (-Weffc++)
87  PndEmcInspectClusters(const PndEmcInspectClusters&); // no implementation
88  PndEmcInspectClusters& operator= (const PndEmcInspectClusters&); // no implementation
89  */
90  private:
92  TClonesArray *fClusterArray;
93 
94  PndEmcGeoPar *fGeoPar; //< Geometry parameter container
95  PndEmcDigiPar *fDigiPar; //< Digitisation parameter container
96  PndEmcRecoPar *fRecoPar; //< Reconstruction parameter container
97 
98  std::vector<Double_t> fClusterPosParam;
99 
100  Int_t fEventCounter;
101  Int_t fNrOfEvents;
102  Int_t fNrOfDigis;
103  Int_t fClusterCounter;
104  Int_t nInspProg;
105  Double_t stoptime;
106 
107  TStopwatch fTimer;
108 
109  // declare histograms to be filled
110  TH1I *hEventMultiplicity;
111 
113  virtual void SetParContainers();
114 
115  /* Verbosity level */
116  // Int_t fVerbose; //do not shadow FairTask::fVerbose
117 
118  ClassDef(PndEmcInspectClusters, 1);
119 };
120 #endif
virtual ~PndEmcInspectClusters()
stores crystal index coordinates (x,y) or (theta,phi)
virtual InitStatus Init()
used to share PndEmcDigis between bumps
parameter set of Emc digitisation
Definition: PndEmcDigiPar.h:24
PndEmcInspectClusters(Int_t verbose=0)
virtual void Exec(Option_t *opt)
represents a reconstructed (splitted) emc cluster
Definition: PndEmcBump.h:46
virtual void FinishTask()
Parameter set for Emc Reco.
Definition: PndEmcRecoPar.h:25
splits clusters based on local maxima in the Phi direction for use with Bremstrahlung correction...