ROOT logo
#ifndef ALIGENREADER_H
#define ALIGENREADER_H
/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
 * See cxx source for full Copyright notice                               */

/* $Id$ */

// Interface for reading events from files.
// Realisations of this interface have to be used with AliGenExFile.
// Author: andreas.morsch@cern.ch

#include "TObject.h"
#include "AliGenEventHeader.h"

class TParticle;
class AliRunLoader;

class AliGenReader : public TObject
{
 public:
    AliGenReader():fFileName(NULL),fCode(kPDG){;}
    AliGenReader(const AliGenReader &reader)
	:TObject(reader), fFileName(NULL), fCode(kPDG){reader.Copy(*this);}
    virtual ~AliGenReader(){;}
    virtual void SetFileName(const Text_t *filname) {fFileName=filname;}
    virtual AliRunLoader * GetRunLoader() const {return 0x0;}
    virtual AliGenEventHeader * GetGenEventHeader() const {return 0x0;}
    virtual void Init()                                                    = 0;
    virtual Int_t NextEvent()                                              = 0;
    virtual TParticle* NextParticle()                                      = 0;
    virtual void RewindEvent()                                             = 0;
    typedef enum {kPDG, kGEANT3} Code_t;
    void SetParticleCode(Code_t code) {fCode = code;}
    AliGenReader & operator=(const AliGenReader & rhs);

 protected:
    const Text_t *fFileName;      // Name of file to read from
    Code_t        fCode;          // Particle code type
 private:
    void Copy(TObject&) const;
    
    ClassDef(AliGenReader,1) //Generate particles from external file
};
#endif






 AliGenReader.h:1
 AliGenReader.h:2
 AliGenReader.h:3
 AliGenReader.h:4
 AliGenReader.h:5
 AliGenReader.h:6
 AliGenReader.h:7
 AliGenReader.h:8
 AliGenReader.h:9
 AliGenReader.h:10
 AliGenReader.h:11
 AliGenReader.h:12
 AliGenReader.h:13
 AliGenReader.h:14
 AliGenReader.h:15
 AliGenReader.h:16
 AliGenReader.h:17
 AliGenReader.h:18
 AliGenReader.h:19
 AliGenReader.h:20
 AliGenReader.h:21
 AliGenReader.h:22
 AliGenReader.h:23
 AliGenReader.h:24
 AliGenReader.h:25
 AliGenReader.h:26
 AliGenReader.h:27
 AliGenReader.h:28
 AliGenReader.h:29
 AliGenReader.h:30
 AliGenReader.h:31
 AliGenReader.h:32
 AliGenReader.h:33
 AliGenReader.h:34
 AliGenReader.h:35
 AliGenReader.h:36
 AliGenReader.h:37
 AliGenReader.h:38
 AliGenReader.h:39
 AliGenReader.h:40
 AliGenReader.h:41
 AliGenReader.h:42
 AliGenReader.h:43
 AliGenReader.h:44
 AliGenReader.h:45
 AliGenReader.h:46
 AliGenReader.h:47
 AliGenReader.h:48
 AliGenReader.h:49
 AliGenReader.h:50