Index: trunk/MagicSoft/Mars/mcorsika/MCorsikaEvtHeader.cc
===================================================================
--- trunk/MagicSoft/Mars/mcorsika/MCorsikaEvtHeader.cc	(revision 9292)
+++ trunk/MagicSoft/Mars/mcorsika/MCorsikaEvtHeader.cc	(revision 9308)
@@ -26,5 +26,10 @@
 //
 // MCorsikaEvtHeader 
-//    
+//
+// Class Version 2:
+// ----------------
+//  - UInt_t fParticleID
+//
+//
 /////////////////////////////////////////////////////////////////////////////
 #include "MCorsikaEvtHeader.h"
@@ -38,5 +43,5 @@
 #include "MLogManip.h"
 
-#include "MMcEvt.hxx"
+//#include "MMcEvt.hxx"
 
 ClassImp(MCorsikaEvtHeader);
@@ -71,5 +76,5 @@
     *fLog << all;
     *fLog << "Event Number:              " << dec << fEvtNumber << endl;
-    *fLog << "Particle ID:               " << MMcEvt::GetParticleName(fParticleID) << endl;
+//    *fLog << "Particle ID:               " << MMcEvt::GetParticleName(fParticleID) << endl;
     *fLog << "Energy:                    " << fTotalEnergy << "GeV" << endl;
     *fLog << "Starting Altitude:         " << fStartAltitude << "g/cm²" << endl;
@@ -102,5 +107,5 @@
 
     fEvtNumber  = TMath::Nint(f[0]);
-    fParticleID = TMath::Nint(f[1]);
+//    fParticleID = TMath::Nint(f[1]);
 
     fTotalEnergy            = f[2];
Index: trunk/MagicSoft/Mars/mcorsika/MCorsikaEvtHeader.h
===================================================================
--- trunk/MagicSoft/Mars/mcorsika/MCorsikaEvtHeader.h	(revision 9292)
+++ trunk/MagicSoft/Mars/mcorsika/MCorsikaEvtHeader.h	(revision 9308)
@@ -18,5 +18,5 @@
 private:
     UInt_t   fEvtNumber;              // Event number
-    UInt_t   fParticleID;             // Particle ID (see MMcEvtBasic or CORSIKA manual)
+//    UInt_t   fParticleID;             // Particle ID (see MMcEvtBasic or CORSIKA manual)
     Float_t  fTotalEnergy;            // [GeV] 
 
@@ -44,5 +44,5 @@
 
     UInt_t GetEvtNumber() const { return fEvtNumber; }
-    UInt_t GetParticleID() const { return fParticleID; }
+//    UInt_t GetParticleID() const { return fParticleID; }
 
     TVector3 GetMomentum() const { return TVector3(fMomentumX, fMomentumY, fMomentumZ); }
Index: trunk/MagicSoft/Mars/mcorsika/MCorsikaRunHeader.cc
===================================================================
--- trunk/MagicSoft/Mars/mcorsika/MCorsikaRunHeader.cc	(revision 9292)
+++ trunk/MagicSoft/Mars/mcorsika/MCorsikaRunHeader.cc	(revision 9308)
@@ -30,4 +30,8 @@
 // Root storage container for the RUN HEADER information
 //
+// Class Version 2:
+// ----------------
+//  + UInt_t fParticleID
+//
 ////////////////////////////////////////////////////////////////////////////
 
@@ -39,4 +43,6 @@
 #include "MLog.h"
 #include "MLogManip.h"
+
+#include "MMcEvt.hxx"
 
 ClassImp(MCorsikaRunHeader);
@@ -81,4 +87,10 @@
     fProgramVersion = f[2];          //FIXME: INT???
     fNumObsLevel    = TMath::Nint(f[3]);
+
+    if (fNumObsLevel!=1)
+    {
+        *fLog << err << "ERROR - Currently only one observation level is allowed." << endl;
+        return kFALSE;
+    }
 
     memset(fObsLevel, 0, 10*4);
@@ -127,5 +139,5 @@
     fin.seekg(-274*4, ios::cur);
 
-    const Int_t n = TMath::Nint(g[96]);  // Numbr i of uses of each cherenkov event
+    const Int_t n = TMath::Nint(g[96]);  // Number i of uses of each cherenkov event
     if (n!=1)
     {
@@ -133,4 +145,6 @@
         return kFALSE;
     }
+
+    fParticleID = TMath::Nint(g[1]);
 
     //fImpactMax = g[86];
@@ -208,4 +222,5 @@
     *fLog << all << endl;
     *fLog << "Run Number:  " << fRunNumber << "  (" << fRunStart.GetStringFmt("%d.%m.%Y") << ", V" << fProgramVersion << ")" << endl;
+    *fLog << "Particle ID: " << MMcEvt::GetParticleName(fParticleID) << endl;
     if (fNumEvents>0)
         *fLog << "Num Events:  " << fNumEvents << endl;
Index: trunk/MagicSoft/Mars/mcorsika/MCorsikaRunHeader.h
===================================================================
--- trunk/MagicSoft/Mars/mcorsika/MCorsikaRunHeader.h	(revision 9292)
+++ trunk/MagicSoft/Mars/mcorsika/MCorsikaRunHeader.h	(revision 9308)
@@ -17,4 +17,5 @@
 private:
     UInt_t    fRunNumber;         // Run number
+    UInt_t    fParticleID;        // Particle ID (see MMcEvtBasic or CORSIKA manual)
     UInt_t    fNumEvents;         // Number of events
     MTime     fRunStart;          // Date of begin (yymmdd)
@@ -22,5 +23,5 @@
 
     Byte_t    fNumObsLevel;       // Number of observation levels
-    Float_t   fObsLevel[10];      //[fNumObsLevel] Observation levels [cm]
+    Float_t   fObsLevel[10];      // Observation levels [cm]
 
     Float_t   fSlopeSpectrum;     // Slope of energy spectrum
@@ -56,4 +57,6 @@
     Float_t GetWavelengthMax() const { return fWavelengthMax; }
 
+    UInt_t GetParticleID() const { return fParticleID; }
+
     //Float_t GetImpactMax() const { return fImpactMax; }
 
@@ -68,5 +71,5 @@
     Bool_t SeekEvtEnd(istream &fin);
 
-    ClassDef(MCorsikaRunHeader, 1)	// storage container for general info
+    ClassDef(MCorsikaRunHeader, 2)	// storage container for general info
 };
 #endif
