04-apr-2004 NvE SetMass() invoked from AliTrack::Set3Momentum to get also the energy...
[u/mrichter/AliRoot.git] / RALICE / AliCalcluster.h
CommitLineData
d88f97cc 1#ifndef ALICALCLUSTER_H
2#define ALICALCLUSTER_H
3da30618 3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
f531a546 6// $Id$
3da30618 7
d88f97cc 8#include <math.h>
9
d88f97cc 10#include "TObjArray.h"
11#include "TString.h"
12
13#include "AliCalmodule.h"
8e8e6c7f 14#include "AliMath.h"
d88f97cc 15
dafe31a2 16class AliCalcluster : public AliSignal
d88f97cc 17{
18 public:
261c0caf 19 AliCalcluster(); // Default constructor, all data initialised to 0
20 virtual ~AliCalcluster(); // Default destructor
21 AliCalcluster(const AliCalcluster& c); // Copy constructor
22 AliCalcluster(AliCalmodule& 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(AliCalmodule& m); // Reset cluster data to start with module m
29 void Add(AliCalmodule& m); // Add module data to cluster
8e8e6c7f 30 void AddVetoSignal(AliSignal& s,Int_t extr=1); // Associate (extrapolated) signal
31 void AddVetoSignal(AliSignal* s,Int_t extr=1) { AddVetoSignal(*s,extr); }
261c0caf 32 AliSignal* 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
d88f97cc 36
37 protected:
c72198f1 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
d88f97cc 40 Int_t fNmods; // The number of modules in the cluster
d88f97cc 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
261c0caf 46 ClassDef(AliCalcluster,5) // Description of a cluster of calorimeter modules.
d88f97cc 47};
48#endif