1 /**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
18 //____________________________________________________________________
20 // Base class for FMD reconstruction algorithms.
22 // Derived classes will implement various ways of reconstructing the
23 // charge particle multiplicity in the FMD.
25 // +---------------------+ +---------------------+
26 // | AliFMDReconstructor |<>-----| AliFMDMultAlgorithm |
27 // +---------------------+ +---------------------+
30 // +-----------+---------+
32 // +-------------------+ +------------------+
33 // | AliFMDMultPoisson | | AliFMDMultNaiive |
34 // +-------------------+ +------------------+
36 // AliFMDReconstructor acts as a manager class. It contains a list of
37 // AliFMDMultAlgorithm objects. The call graph looks something like
40 // +----------------------+ +----------------------+
41 // | :AliFMDReconstructor | | :AliFMDMultAlgorithm |
42 // +----------------------+ +----------------------+
45 // ------------>| | PreRun +-+
46 // | |------------------------------->| |
48 // | |-----+ (for each event) |
49 // | | | *ProcessEvent |
51 // || |<---+ PreEvent +-+
52 // || |------------------------------>| |
55 // || | | ProcessDigits |
58 // ||| | *ProcessDigit(digit) +-+
59 // ||| |----------------------------->| |
63 // || |------------------------------>| |
67 // | |------------------------------->| |
73 #include "AliFMDMultAlgorithm.h" // ALIFMDMULTALGORITHM_H
74 #include "AliFMDDigit.h" // ALIFMDDIGIT_H
75 #include <TClonesArray.h> // ROOT_TClonesArray
77 //____________________________________________________________________
78 ClassImp(AliFMDMultAlgorithm)
80 ; // This is here to keep Emacs for indenting the next line
83 //____________________________________________________________________
84 AliFMDMultAlgorithm::AliFMDMultAlgorithm(const char* name, const char* title)
85 : TNamed(name, title),
91 //____________________________________________________________________
92 AliFMDMultAlgorithm::~AliFMDMultAlgorithm()
101 //____________________________________________________________________
103 AliFMDMultAlgorithm::PreEvent(TTree* treeR, Float_t /* ipZ */)
105 if (fMult) fMult->Clear();
112 //____________________________________________________________________