]> git.uio.no Git - u/mrichter/AliRoot.git/blame - EMCAL/AliEMCALv0.h
Trigger board object base class
[u/mrichter/AliRoot.git] / EMCAL / AliEMCALv0.h
CommitLineData
2012850d 1#ifndef ALIEMCALV0_H
2#define ALIEMCALV0_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice
5 */
6/* $Id$ */
7
8//_________________________________________________________________________
9// Implementation version v0 of EMCAL Manager class
10//*--
11//*-- Author: Yves Schutz (SUBATECH)
b13bbe81 12//*-- and : Sahal Yacoob (LBL / UCT)
d87bd045 13// : Aleksei Pavlinov (WSU) SHASHLYK
b13bbe81 14//#include <assert.h>
2012850d 15
16// --- ROOT system ---
17
b13bbe81 18class TFile;
1963b290 19class TList;
20class TNode;
c01485dd 21class AliEMCALShishKebabTrd1Module;
b13bbe81 22
2012850d 23// --- AliRoot header files ---
24#include "AliEMCAL.h"
b13bbe81 25
26//class AliEMCALGeometry ;
2012850d 27
28class AliEMCALv0 : public AliEMCAL {
29
30 public:
31
b13bbe81 32 AliEMCALv0():AliEMCAL() {}
2012850d 33 AliEMCALv0(const char *name, const char *title="") ;
f5dc24cb 34 AliEMCALv0(const AliEMCALv0 & emcal):AliEMCAL(emcal) {
2012850d 35 // cpy ctor: no implementation yet
36 // requested by the Coding Convention
9859bfc0 37 Fatal("cpy ctor", "not implemented") ;
2012850d 38 }
b13bbe81 39 virtual ~AliEMCALv0(){}
40
b13bbe81 41 virtual void BuildGeometry();// creates the geometry for the ROOT display
1963b290 42 TNode *BuildGeometryOfWSUC(); // WSUC - test environment
b13bbe81 43 virtual void CreateGeometry() ;// creates the geometry for GEANT
2012850d 44 virtual void Init(void) ; // does nothing
45 virtual Int_t IsVersion(void) const {
46 // Gives the version number
47 return 0 ;
48 }
05a92d59 49 virtual const TString Version(void) const{
2012850d 50 // As above
51 return TString("v0") ;
52 }
53
9c0a4862 54 AliEMCALv0 & operator = (const AliEMCALv0 & /*rvalue*/) {
2012850d 55 // assignement operator requested by coding convention but not needed
9859bfc0 56 Fatal("operator =", "not implemented") ;
2012850d 57 return *this ;
58 }
1963b290 59 // ShishKebab
60 void CreateShishKebabGeometry();
61 void CreateSmod(const char* mother="XEN1");
62 void CreateEmod(const char* mother="SMOD", const char* child="EMOD");
63 // TRD1
64 void Trd1Tower3X3(const double parSCM0[5]);
65 void Trd1Tower4X4();
66 void PbInTrap(const double parTRAP[11], TString n);
67 // TRD2 - 1th design
68 void Scm0InTrd2(const AliEMCALGeometry * g, const Double_t parEMOD[5], Double_t parSCM0[5]);
69 void Division2X2InScm0(const AliEMCALGeometry * g, const Double_t parSCM0[5]);
70 void PbInTrapForTrd2(const double *parTRAP, TString name);
71 // TRD2 - 2th design
72 void PbmoInTrd2(const AliEMCALGeometry * g, const Double_t parEMOD[5], Double_t parPBMO[5]);
73 void Division2X2InPbmo(const AliEMCALGeometry * g, const Double_t parPBMO[5]);
74
c01485dd 75 TList *GetShishKebabModules() {return fShishKebabModules;}
76 AliEMCALShishKebabTrd1Module *GetShishKebabModule(const Int_t neta=0);
77 private:
1963b290 78 TList *fShishKebabModules; //! list of modules for twist geometries
2012850d 79
80 protected:
b13bbe81 81
c01485dd 82 ClassDef(AliEMCALv0,3) // Implementation of EMCAL manager class for midrapidity barrel layout between 80 and 180(190) degrees
2012850d 83
84 };
85
86#endif // AliEMCALV0_H