X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=PMD%2FAliPMDv1.h;h=1fd082fd8e1409310ea1dd9428e375cac99222ed;hb=667432ef45760f2f2ec724f3e2e21330d31e192b;hp=0b9eb0b387a810072c45a412df853aaebfd346a4;hpb=3da306186bdfe9b8dedf54c4b9cdcf2bff5b132c;p=u%2Fmrichter%2FAliRoot.git diff --git a/PMD/AliPMDv1.h b/PMD/AliPMDv1.h index 0b9eb0b387a..1fd082fd8e1 100644 --- a/PMD/AliPMDv1.h +++ b/PMD/AliPMDv1.h @@ -1,37 +1,77 @@ -#ifndef PMDV1_H -#define PMDV1_H +#ifndef ALIPMDV1_H +#define ALIPMDV1_H /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * * See cxx source for full Copyright notice */ /* $Id$ */ +// Rectangular geometry - Bedanga Mohanty - Spetember 2003 -//////////////////////////////////////////////// +///////////////////////////////////////////////// // Manager and hits classes for set:PMD // //////////////////////////////////////////////// #include "AliPMD.h" - +#include "TGeoManager.h" //___________________________________________ class AliPMDv1 : public AliPMD { - -private: - Int_t fMedSens; public: AliPMDv1(); AliPMDv1(const char *name, const char *title); virtual ~AliPMDv1() {} virtual void CreateGeometry(); - virtual void CreateInside(); - virtual void CreatePads(); + virtual void CreatePMD(); + virtual void CreateSupermodule(); + virtual void GetParameters(); virtual void CreateMaterials(); virtual void Init(); virtual Int_t IsVersion() const {return 1;} virtual void StepManager(); - virtual void DrawModule(); + virtual void AddAlignableVolumes() const; + void SetSectorAlignable() const; + void SetCpvOff(); + void SetPreOff(); + void SetModuleOff(Int_t imodule); + +private: + + static const Int_t fgkNcolUM1; // Number of cols in UM, type 1 + static const Int_t fgkNcolUM2; // Number of cols in UM, type 2 + static const Int_t fgkNrowUM1; // Number of rows in UM, type 1 + static const Int_t fgkNrowUM2; // Number of rows in UM, type 2 + static const Float_t fgkCellRadius; // Radius of a hexagonal cell + static const Float_t fgkCellWall; // Thickness of cell Wall + static const Float_t fgkCellDepth; // Gas thickness + static const Float_t fgkThPCB; // Thickness of PCB + static const Float_t fgkThLead; // Thickness of Pb + static const Float_t fgkThSteel; // Thickness of Steel + static const Float_t fgkGap; // Air Gap + static const Float_t fgkZdist; // z-position of the detector + static const Float_t fgkSqroot3; // Square Root of 3 + static const Float_t fgkSqroot3by2; // Square Root of 3 by 2 + static const Float_t fgkSSBoundary; + static const Float_t fgkThSS ; + static const Float_t fgkThTopG10; + static const Float_t fgkThBotG10; + + Int_t fModStatus[48]; + + Float_t fSMthick; // Thickness of the full PMD profile + Float_t fSMthickpmd; // Thickness of the PMD detector only + Float_t fDthick; // Thickness of the pre/veto module + Float_t fSMLengthax; // Supermodule length along X, type A + Float_t fSMLengthay; // Supermodule length along Y, type A + Float_t fSMLengthbx; // Supermodule length along X, type B + Float_t fSMLengthby; // Supermodule length along Y, type A + Int_t fMedSens; // Sensitive Medium Ar+CO2 + Float_t fDboxmm1[3]; // Master MODULE EMPA of aluminum for PMD + Float_t fDboxmm12[3]; // Master MODULE EMCA of aluminum for CPV + Float_t fDboxmm2[3]; // Master MODULE EMPB of aluminum for PMD + Float_t fDboxmm22[3]; // Master MODULE EMCB of aluminum for CPV + - ClassDef(AliPMDv1,1) //Hits manager for set:PMD + ClassDef(AliPMDv1,4) //Hits manager for set:PMD }; #endif