Merge branch 'master' of https://git.cern.ch/reps/AliRoot
[u/mrichter/AliRoot.git] / EVGEN / AliGenReaderSL.h
CommitLineData
ed551210 1#ifndef ALIGENREADERSL_H
2#define ALIGENREADERSL_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// Realisations of the AliGenReader interface to be used with AliGenExFile.
9// NextEvent() loops over events
10// and NextParticle() loops over particles.
11// This implementation reads various StarLight output formats
12// Author: andreas.morsch@cern.ch
13
14#include "AliGenReader.h"
15
16class TParticle;
17
18class AliGenReaderSL : public AliGenReader
19{
20 public:
21 AliGenReaderSL():fFile(0), fNParticles(0), fFormat(0) {;}
22 AliGenReaderSL(const AliGenReaderSL &reader)
23 :AliGenReader(reader), fFile(0), fNParticles(0), fFormat(0) {reader.Copy(*this);}
24 virtual ~AliGenReaderSL(){;}
25 virtual void Init();
26 virtual Int_t NextEvent();
27 virtual TParticle* NextParticle();
28 virtual void RewindEvent();
29 virtual void SetFormat(Int_t format) {fFormat = format;}
30 AliGenReaderSL & operator=(const AliGenReaderSL & rhs);
31
32 protected:
33 FILE *fFile; // pointer to the file
34 Int_t fNParticles; // Number of particles
35 Int_t fFormat; // File format
36 private:
37 void Copy(TObject&) const;
38
39 ClassDef(AliGenReaderSL, 1) //Generate particles from external file
40};
41#endif
42
43
44
45
46
47