]> git.uio.no Git - u/mrichter/AliRoot.git/blame - RALICE/AliCalcluster.h
30-nov-2002 NvE Vertex position errors based on fResolution introduced in AliCollider...
[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
9f8f3e10 8#include "Riostream.h"
d88f97cc 9#include <math.h>
10
11#include "TObject.h"
12#include "TObjArray.h"
13#include "TString.h"
14
15#include "AliCalmodule.h"
8e8e6c7f 16#include "AliMath.h"
d88f97cc 17
18class AliCalcluster : public TObject,public AliPosition
19{
20 public:
21 AliCalcluster(); // Default constructor, all data initialised to 0
22 ~AliCalcluster(); // Default destructor
23 AliCalcluster(AliCalmodule& m); // Create new cluster starting at module m
24 Int_t GetRow(); // Return row number of cluster center
25 Int_t GetColumn(); // Return column number of cluster center
26 Float_t GetSignal(Int_t n=0); // Return signal of nxn matrix around the center
27 Int_t GetNmodules(); // Return number of modules in cluster
28 Float_t GetRowDispersion(); // Return normalised row dispersion of cluster
29 Float_t GetColumnDispersion(); // Return normalised column dispersion of cluster
30 void Start(AliCalmodule& m); // Reset cluster data to start with module m
31 void Add(AliCalmodule& m); // Add module data to cluster
8e8e6c7f 32 void AddVetoSignal(AliSignal& s,Int_t extr=1); // Associate (extrapolated) signal
33 void AddVetoSignal(AliSignal* s,Int_t extr=1) { AddVetoSignal(*s,extr); }
d88f97cc 34 AliSignal* GetVetoSignal(Int_t j); // Access to veto signal number j
35 Int_t GetNvetos(); // Provide the number of veto signals
959fbac5 36 Float_t GetVetoLevel(); // Provide confidence level of best associated veto hit
37 Int_t HasVetoHit(Double_t cl); // Check for ass. veto hit with conf. level > cl
d88f97cc 38
39 protected:
40 AliCalmodule* fCenter; // Pointer to the central module of the cluster
41 Float_t fSig; // The total signal value of the cluster
42 Int_t fNmods; // The number of modules in the cluster
43 Float_t fSig11; // Cluster signal of the central module
44 Float_t fSig33; // Cluster signal in 3x3 matrix around the center
45 Float_t fSig55; // Cluster signal in 5x5 matrix around the center
46 Float_t fRowdisp; // Row dispersion of cluster (not normalised)
47 Float_t fColdisp; // Column dispersion of cluster (not normalised)
48 Int_t fNvetos; // The number of associated veto signals
49 TObjArray* fVetos; // The array of associated veto signals
50
8e8e6c7f 51 ClassDef(AliCalcluster,2) // Description of a cluster of calorimeter modules.
d88f97cc 52};
53#endif