Factorization of the different raw fitting algorithms in EMCAL (Per Thomas)
[u/mrichter/AliRoot.git] / EMCAL / AliCaloRawAnalyzerFactory.cxx
CommitLineData
92d9f317 1// -*- mode: c++ -*-
2
3/**************************************************************************
4 * This file is property of and copyright by the Experimental Nuclear *
5 * Physics Group, Dep. of Physics *
6 * University of Oslo, Norway, 2007 *
7 * *
8 * Author: Per Thomas Hille <perthi@fys.uio.no> for the ALICE HLT Project.*
9 * Contributors are mentioned in the code where appropriate. *
10 * Please report bugs to perthi@fys.uio.no *
11 * *
12 * Permission to use, copy, modify and distribute this software and its *
13 * documentation strictly for non-commercial purposes is hereby granted *
14 * without fee, provided that the above copyright notice appears in all *
15 * copies and that both the copyright notice and this permission notice *
16 * appear in the supporting documentation. The authors make no claims *
17 * about the suitability of this software for any purpose. It is *
18 * provided "as is" without express or implied warranty. *
19 **************************************************************************/
20
21#include "AliCaloRawAnalyzerFactory.h"
22#include "AliCaloRawAnalyzerFastFit.h"
23#include "AliCaloRawAnalyzerNN.h"
24#include "AliCaloRawAnalyzerLMS.h"
25#include "AliCaloRawAnalyzerPeakFinder.h"
26#include "AliCaloRawAnalyzerCrude.h"
27#include "AliCaloRawAnalyzerLMSOffline.h"
28#include "AliCaloRawAnalyzerKStandard.h"
29#include "AliCaloRawAnalyzerFakeALTRO.h"
30
31AliCaloRawAnalyzerFactory::AliCaloRawAnalyzerFactory()
32{
33
34}
35
36AliCaloRawAnalyzerFactory::~AliCaloRawAnalyzerFactory()
37{
38
39}
40
41AliCaloRawAnalyzer*
42AliCaloRawAnalyzerFactory::CreateAnalyzer( const int algo )
43{
44 switch ( algo)
45 {
46 case kFastFit:
47 return new AliCaloRawAnalyzerFastFit();
48 break;
49 case kNeuralNet:
50 return new AliCaloRawAnalyzerNN();
51 break;
52 case kLMS:
53 //return new AliCaloRawAnalyzerLMS();
54 return new AliCaloRawAnalyzerLMSOffline();
55 break;
56 case kPeakFinder:
57 return new AliCaloRawAnalyzerPeakFinder();
58 break;
59 case kCrude:
60 return new AliCaloRawAnalyzerCrude();
61 break;
62 case kLMSOffline:
63 return new AliCaloRawAnalyzerLMSOffline();
64 break;
65 case kStandard:
66 return new AliCaloRawAnalyzerKStandard();
67 break;
68 case kFakeAltro:
69 return new AliCaloRawAnalyzerFakeALTRO();
70 break;
71 default:
72 return new AliCaloRawAnalyzerCrude();
73 break;
74 }
75}
76
77
78
79
80