1 #ifndef ALIGENHALOPROTVINO_H
2 #define ALIGENHALOPROTVINO_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
9 #include "AliGenerator.h"
12 // Read background particles from a boundary source
13 // Very specialized generator to simulate background from beam halo.
14 // Author: andreas.morsch@cern.ch
16 class AliGenHaloProtvino : public AliGenerator
19 enum constants{kY1Day0, kY1Day70, kY2D0, kY2D10, kY3D90};
21 AliGenHaloProtvino(Int_t npart);
22 AliGenHaloProtvino(const AliGenHaloProtvino &HaloProtvino);
23 virtual ~AliGenHaloProtvino();
25 virtual void SetFileName(TString filename) {fFileName=TString(filename);}
26 virtual void Generate();
27 virtual Float_t GassPressureWeight(Float_t zPrimary);
28 virtual void SetSide(Int_t flag = 1) {fSide = flag;}
29 virtual void SetNskip(Int_t nskip) {fNskip = nskip;}
30 virtual void SetRunPeriod(Int_t t = kY3D90) {fRunPeriod = t;}
33 AliGenHaloProtvino & operator=(const AliGenHaloProtvino & rhs);
36 FILE* fFile; // ! Pointer to file
37 TString fFileName; // Choose the file
38 Int_t fSide; // Muon arm side (1) / Castor side (-1)
39 Int_t fRunPeriod; // LHC Running Period
40 Int_t fNskip; // Number of entries to skip
41 Float_t fZ1[20], fZ2[21]; // ! z-positions for gas pressure tables
42 Float_t fG1[20][5], fG2[21][5]; // ! gas pressures
43 ClassDef(AliGenHaloProtvino,1) // LHC background boundary source (Protvino Group results)