//  
// Author: Oliver Maria Kind <mailto: kind@mail.desy.de>
// Update: $Id: AtlEvtTreeInfo.h,v 1.4 2011/01/19 22:15:40 kind Exp $
// Copyright: 2009 (C) Oliver Maria Kind
//
#ifndef ATLAS_AtlEvtTreeInfo
#define ATLAS_AtlEvtTreeInfo
#ifndef ROOT_TNamed
#include <TNamed.h>
#endif

class TSystem;
class TObjArray;
class TObjString;
class TString;

class AtlEvtTreeInfo : public TNamed {

private:
    Int_t   fAthenaVersion[5];          // ATHENA version used for the A++ conversion process
    TString fAthenaPhysicsAnalysisName; // Name of the ATHENA physics analysis (if any),
                                        // this is often referred to as the name of the patch
    Float_t fBeamEnergy;                // LHC beam energy (GeV)
    
public:
    AtlEvtTreeInfo();
    AtlEvtTreeInfo(const char* name, const char* title);
    virtual ~AtlEvtTreeInfo();
    void ReadAthenaVersion();

    inline Int_t AthenaVersionMajor() const {
	// Major ATHENA version number (1st token)
	return fAthenaVersion[0];
    }
    inline Int_t AthenaVersionMinor() const {
	// Minor ATHENA version number (2nd token)
	return fAthenaVersion[1];
    }
    inline Int_t AthenaVersionRevision() const {
	// ATHENA development revision number (3rd token)
	return fAthenaVersion[2];
    }
    inline Int_t AthenaVersionPatch() const {
	// ATHENA development revision number (4th token)
	return fAthenaVersion[3];
    }
    inline Int_t AthenaVersionPhysicsAnalysis() const {
	// ATHENA development revision number (5th token)
	return fAthenaVersion[4];
    }
    inline const char* AthenaPhysicsAnalysisName() const {
	// ATHENA physics analysis name
	return fAthenaPhysicsAnalysisName.Data();
    }
    inline Float_t GetBeamEnergy() const {
	// LHC beam energy (GeV)
	return fBeamEnergy;
    }
    inline void SetBeamEnergy(Float_t BeamEnergy) {
	// Set LHC beam energy
	fBeamEnergy = BeamEnergy;
    }
    
    ClassDef(AtlEvtTreeInfo,4) // A++ event tree info
};
#endif

 AtlEvtTreeInfo.h:1
 AtlEvtTreeInfo.h:2
 AtlEvtTreeInfo.h:3
 AtlEvtTreeInfo.h:4
 AtlEvtTreeInfo.h:5
 AtlEvtTreeInfo.h:6
 AtlEvtTreeInfo.h:7
 AtlEvtTreeInfo.h:8
 AtlEvtTreeInfo.h:9
 AtlEvtTreeInfo.h:10
 AtlEvtTreeInfo.h:11
 AtlEvtTreeInfo.h:12
 AtlEvtTreeInfo.h:13
 AtlEvtTreeInfo.h:14
 AtlEvtTreeInfo.h:15
 AtlEvtTreeInfo.h:16
 AtlEvtTreeInfo.h:17
 AtlEvtTreeInfo.h:18
 AtlEvtTreeInfo.h:19
 AtlEvtTreeInfo.h:20
 AtlEvtTreeInfo.h:21
 AtlEvtTreeInfo.h:22
 AtlEvtTreeInfo.h:23
 AtlEvtTreeInfo.h:24
 AtlEvtTreeInfo.h:25
 AtlEvtTreeInfo.h:26
 AtlEvtTreeInfo.h:27
 AtlEvtTreeInfo.h:28
 AtlEvtTreeInfo.h:29
 AtlEvtTreeInfo.h:30
 AtlEvtTreeInfo.h:31
 AtlEvtTreeInfo.h:32
 AtlEvtTreeInfo.h:33
 AtlEvtTreeInfo.h:34
 AtlEvtTreeInfo.h:35
 AtlEvtTreeInfo.h:36
 AtlEvtTreeInfo.h:37
 AtlEvtTreeInfo.h:38
 AtlEvtTreeInfo.h:39
 AtlEvtTreeInfo.h:40
 AtlEvtTreeInfo.h:41
 AtlEvtTreeInfo.h:42
 AtlEvtTreeInfo.h:43
 AtlEvtTreeInfo.h:44
 AtlEvtTreeInfo.h:45
 AtlEvtTreeInfo.h:46
 AtlEvtTreeInfo.h:47
 AtlEvtTreeInfo.h:48
 AtlEvtTreeInfo.h:49
 AtlEvtTreeInfo.h:50
 AtlEvtTreeInfo.h:51
 AtlEvtTreeInfo.h:52
 AtlEvtTreeInfo.h:53
 AtlEvtTreeInfo.h:54
 AtlEvtTreeInfo.h:55
 AtlEvtTreeInfo.h:56
 AtlEvtTreeInfo.h:57
 AtlEvtTreeInfo.h:58
 AtlEvtTreeInfo.h:59
 AtlEvtTreeInfo.h:60
 AtlEvtTreeInfo.h:61
 AtlEvtTreeInfo.h:62
 AtlEvtTreeInfo.h:63
 AtlEvtTreeInfo.h:64
 AtlEvtTreeInfo.h:65
 AtlEvtTreeInfo.h:66
 AtlEvtTreeInfo.h:67