Ignore:
Timestamp:
06/28/16 14:29:15 (8 years ago)
Author:
dbaack
Message:
Bugfixes and gcc-5 compability changes

Location:
branches/Corsika7500Compatibility/mcorsika
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/Corsika7500Compatibility/mcorsika/MCorsikaFormat.cc

    r18455 r18526  
    6969    else if(strcmp(&buffer[4], "RUNH") == 0)
    7070    {
    71         fileIn->seekg(4, ios::cur);
    72         delete[] buffer;
    73         return new MCorsikaFormatRaw(fileIn, true);
     71        //std::cout << "\n||||\tIgnore first 4 bytes" << std::endl;
     72        fileIn->seekg(4, ios::cur);
     73        delete[] buffer;
     74        return new MCorsikaFormatRaw(fileIn, true);
    7475    }
    7576
     
    129130    blockIdentifier = 0;
    130131    blockLength     = 272 * 4;
    131 
     132    //std::cout << "||||||||||||||| Raw Blockheader: " << blockHeader << std::endl;
    132133    switch(blockHeader)
    133134      {
     
    166167    {
    167168        if(fFortranRaw)
    168                 fIn->seekg(-i*273*4-4, ios::end);
     169        {
     170            fIn->seekg(-i*273*4-4, ios::end);
     171        }
    169172        else
     173        {
    170174                fIn->seekg(-i*273*4, ios::end);
     175        }
    171176
    172177        char runh[5]="\0\0\0\0";
  • branches/Corsika7500Compatibility/mcorsika/MCorsikaFormat.h

    r18455 r18526  
    11#ifndef MARS_MDataFormat
    22#define MARS_MDataFormat
     3
     4#include <iostream>
    35
    46#ifndef MARS_MAGIC
     
    4749   Bool_t fFortranRaw = false;
    4850public:
    49    MCorsikaFormatRaw(std::istream * in)
    50         : MCorsikaFormat(in) {}
     51   //MCorsikaFormatRaw(std::istream * in)
     52   //    : MCorsikaFormat(in) {}
    5153
    52    MCorsikaFormatRaw(std::istream* in, Bool_t fortranRaw)
    53         : MCorsikaFormat(in), fFortranRaw(fortranRaw) {}
     54   MCorsikaFormatRaw(std::istream* in, Bool_t fortranRaw = false)
     55        : MCorsikaFormat(in), fFortranRaw(fortranRaw) {}//std::cout << "\n\n||||||||||||||||||||||||||||" << fortranRaw << std::endl;}
    5456
    5557   Bool_t NextBlock(Int_t   readState, Int_t & blockType, Int_t & blockVersion,
  • branches/Corsika7500Compatibility/mcorsika/MCorsikaRead.cc

    r18455 r18526  
    561561                                          fRunHeader->GetWavelengthMax());
    562562                  }
    563                else
     563                else if (fBlockVersion == 1000 &&  (fTelescopeIdx < 0 || fTelescopeIdx ==  telIdx)     )
     564                {
     565                  status = fEvent->ReadEventIoEvtCompact(fInFormat);
     566
     567                  Int_t arrayIdx = fBlockIdentifier / 1000;
     568                  Float_t xArrOff, yArrOff;
     569                  fEvtHeader->GetArrayOffset(arrayIdx, xArrOff, yArrOff);
     570                  fEvtHeader->SetTelescopeOffset(arrayIdx,
     571                                                   xArrOff + fTelescopeY[telIdx],
     572                                                   yArrOff - fTelescopeX[telIdx] );
     573                  fEvent->AddXY(xArrOff + fTelescopeY[telIdx],
     574                                 yArrOff - fTelescopeX[telIdx]);
     575                  fEvent->SimWavelength(fRunHeader->GetWavelengthMin(),
     576                                          fRunHeader->GetWavelengthMax());
     577                }               
     578               else
    564579                  // skip this telescope
    565580                  fInFormat->Seek(fBlockLength);
Note: See TracChangeset for help on using the changeset viewer.