NCFS-Pack
A generic (astro)particle physics analysis framework
 
Loading...
Searching...
No Matches
NcCalcluster.h
Go to the documentation of this file.
1#ifndef NcCalcluster_h
2#define NcCalcluster_h
3// Copyright(c) 1997 NCFS/IIHE, All Rights Reserved.
4// See cxx source for full Copyright notice.
5
6#include <math.h>
7
8#include "TObjArray.h"
9#include "TString.h"
10
11#include "NcCalmodule.h"
12#include "NcMath.h"
13
15
16class NcCalcluster : public NcSignal
17{
18 public:
19 NcCalcluster(); // Default constructor, all data initialised to 0
20 virtual ~NcCalcluster(); // Default destructor
21 NcCalcluster(const NcCalcluster& c); // Copy constructor
22 NcCalcluster(NcCalmodule& m); // Create new cluster starting at module m
23 Int_t GetRow() const; // Return row number of cluster center
24 Int_t GetColumn() const; // Return column number of cluster center
25 Int_t GetNmodules() const; // Return number of modules in cluster
26 Float_t GetRowDispersion() const; // Return normalised row dispersion of cluster
27 Float_t GetColumnDispersion() const; // Return normalised column dispersion of cluster
28 void Start(NcCalmodule& m); // Reset cluster data to start with module m
29 void Add(NcCalmodule& m); // Add module data to cluster
30 void AddVetoSignal(NcSignal& s,Int_t extr=1); // Associate (extrapolated) signal
31 void AddVetoSignal(NcSignal* s,Int_t extr=1) { AddVetoSignal(*s,extr); }
32 NcSignal* GetVetoSignal(Int_t j) const; // Access to veto signal number j
33 Int_t GetNvetos() const; // Provide the number of veto signals
34 Float_t GetVetoLevel() const; // Provide confidence level of best associated veto hit
35 Int_t HasVetoHit(Double_t cl) const; // Check for ass. veto hit with conf. level > cl
36
37 protected:
38 Int_t fRow; // Row index of the central module of the cluster
39 Int_t fCol; // Column index of the central module of the cluster
40 Int_t fNmods; // The number of modules in the cluster
41 Float_t fRowdisp; // Row dispersion of cluster (not normalised)
42 Float_t fColdisp; // Column dispersion of cluster (not normalised)
43 Int_t fNvetos; // The number of associated veto signals
44 TObjArray* fVetos; // The array of associated veto signals
45
46 ClassDef(NcCalcluster,1) // Description of a cluster of calorimeter modules.
47};
48#endif
Int_t GetNvetos() const
Int_t HasVetoHit(Double_t cl) const
Int_t GetRow() const
Int_t GetNmodules() const
void Add(NcCalmodule &m)
Float_t GetColumnDispersion() const
void AddVetoSignal(NcSignal *s, Int_t extr=1)
Float_t GetVetoLevel() const
TObjArray * fVetos
NcSignal * GetVetoSignal(Int_t j) const
void Start(NcCalmodule &m)
Float_t fColdisp
virtual ~NcCalcluster()
Float_t GetRowDispersion() const
Float_t fRowdisp
Int_t GetColumn() const
void AddVetoSignal(NcSignal &s, Int_t extr=1)
Description of a module in a calorimeter system.
Definition NcCalmodule.h:11
Generic handling of (extrapolated) detector signals.
Definition NcSignal.h:23
NcSignal(const char *name="", const char *title="")
Definition NcSignal.cxx:155