]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - EVGEN/AliDecayer.h
stream.h changed to iostream.h
[u/mrichter/AliRoot.git] / EVGEN / AliDecayer.h
... / ...
CommitLineData
1#ifndef ALIDECAYER_H
2#define ALIDECAYER_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// Abstract base class for particle decays.
9// Clients are the transport code and the primary particle generators
10// Author: andreas.morsch@cern.ch
11
12#include <TObject.h>
13class TClonesArray;
14class TLorentzVector;
15
16typedef enum
17{ kSemiElectronic, kDiElectron, kSemiMuonic, kDiMuon,
18 kBJpsiDiMuon, kBJpsiDiElectron,
19 kBPsiPrimeDiMuon, kBPsiPrimeDiElectron, kPiToMu, kKaToMu, kNoDecay, kHadronicD, kOmega, kAll}
20Decay_t;
21
22class AliDecayer :
23public TObject
24{
25 public:
26//
27 virtual ~AliDecayer(){;}
28 virtual void Init() =0;
29 virtual void Decay(Int_t idpart, TLorentzVector* p) =0;
30 virtual Int_t ImportParticles(TClonesArray *particles) =0;
31 virtual void SetForceDecay(Decay_t type) =0;
32 virtual void ForceDecay() =0;
33 virtual Float_t GetPartialBranchingRatio(Int_t ipart) =0;
34 virtual Float_t GetLifetime(Int_t kf) =0;
35 virtual void ReadDecayTable() =0;
36 ClassDef(AliDecayer,2) // Alice Decayer Base Class
37};
38#endif
39
40
41
42
43
44
45