Make destructor virtual
[u/mrichter/AliRoot.git] / STEER / AliVMC.h
CommitLineData
b13db077 1#ifndef ALIVMC_H
2#define ALIVMC_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// //
10// //
11// Generic interface to MC for AliRoot //
12// //
13// //
14///////////////////////////////////////////////////////////////////////////////
15
16#include <TNamed.h>
17
80762cb1 18#include "AliMC.h"
19
20class AliVMC;
21
22R__EXTERN AliVMC *gVMC;
23
b13db077 24class AliVMC : public TNamed
25{
26
27private:
28 static AliVMC* fgVMC;
29
30public:
31 AliVMC(const char *name, const char *title);
80762cb1 32 AliVMC() {}
5f6635a9 33 virtual ~AliVMC() {if(gMC) delete gMC; fgVMC=gVMC=0;}
b13db077 34 //Generic access functions
80762cb1 35 static AliVMC* GetVMC() {return fgVMC;}
b13db077 36 //Generic Alice MonteCarlo Functions
37 virtual void FinishGeometry() = 0;
38 virtual void BuildPhysics() = 0;
39 virtual void ProcessEvent() = 0;
80762cb1 40
b13db077 41 //
42 ClassDef(AliVMC,1) //Generic MonteCarlo Class
43
44};
45
b13db077 46#endif
47