]> git.uio.no Git - u/mrichter/AliRoot.git/blame - RALICE/AliCalcluster.h
Small syntax correction for SunOS
[u/mrichter/AliRoot.git] / RALICE / AliCalcluster.h
CommitLineData
d88f97cc 1#ifndef ALICALCLUSTER_H
2#define ALICALCLUSTER_H
3///////////////////////////////////////////////////////////////////////////
4// Class AliCalcluster
5// Description of a cluster of calorimeter modules.
6// A matrix geometry is assumed in which a cluster center
7// is identified by (row,col) and contains sig as signal
8// being the signal of the complete cluster.
9// Some info about cluster topology is provided in order
10// to enable EM or hadronic cluster identification
11//
12//--- NvE 13-jun-1997 UU-SAP Utrecht
13///////////////////////////////////////////////////////////////////////////
14
15#include <iostream.h>
16#include <math.h>
17
18#include "TObject.h"
19#include "TObjArray.h"
20#include "TString.h"
21
22#include "AliCalmodule.h"
23
24class AliCalcluster : public TObject,public AliPosition
25{
26 public:
27 AliCalcluster(); // Default constructor, all data initialised to 0
28 ~AliCalcluster(); // Default destructor
29 AliCalcluster(AliCalmodule& m); // Create new cluster starting at module m
30 Int_t GetRow(); // Return row number of cluster center
31 Int_t GetColumn(); // Return column number of cluster center
32 Float_t GetSignal(Int_t n=0); // Return signal of nxn matrix around the center
33 Int_t GetNmodules(); // Return number of modules in cluster
34 Float_t GetRowDispersion(); // Return normalised row dispersion of cluster
35 Float_t GetColumnDispersion(); // Return normalised column dispersion of cluster
36 void Start(AliCalmodule& m); // Reset cluster data to start with module m
37 void Add(AliCalmodule& m); // Add module data to cluster
38 void AddVetoSignal(Float_t* r,TString f,Float_t s=0); // Associate (extrapolated) signal
39 AliSignal* GetVetoSignal(Int_t j); // Access to veto signal number j
40 Int_t GetNvetos(); // Provide the number of veto signals
41
42 protected:
43 AliCalmodule* fCenter; // Pointer to the central module of the cluster
44 Float_t fSig; // The total signal value of the cluster
45 Int_t fNmods; // The number of modules in the cluster
46 Float_t fSig11; // Cluster signal of the central module
47 Float_t fSig33; // Cluster signal in 3x3 matrix around the center
48 Float_t fSig55; // Cluster signal in 5x5 matrix around the center
49 Float_t fRowdisp; // Row dispersion of cluster (not normalised)
50 Float_t fColdisp; // Column dispersion of cluster (not normalised)
51 Int_t fNvetos; // The number of associated veto signals
52 TObjArray* fVetos; // The array of associated veto signals
53
54 ClassDef(AliCalcluster,1) // Class definition to enable ROOT I/O
55};
56#endif