Newer
Older
// $Id: Geant4Converter.cpp 603 2013-06-13 21:15:14Z markus.frank $
//====================================================================
// AIDA Detector description implementation for LCD
//--------------------------------------------------------------------
//
//====================================================================
// Framework include files
#include "LCIOEventReader.h"
/*
* DD4hep namespace declaration
*/
namespace DD4hep {
/*
* Simulation namespace declaration
namespace Simulation {
/** @class LCIOStdHepReader LCIOStdHepReader.h DDG4/LCIOStdHepReader.h
*
* Base class to read StdHep files with lcio
*
* @author P.Kostka (main author)
* @author M.Frank (code reshuffeling into new DDG4 scheme)
* @version 1.0
*/
struct LCIOStdHepReader : public LCIOEventReader {
/// Reference to Reader object
UTIL::LCStdHepRdr* m_reader;
public:
/// Initializing constructor
LCIOStdHepReader(const std::string& nam, int);
virtual ~LCIOStdHepReader();
/// Read an event and return a LCCollectionVec of MCParticles.
virtual EVENT::LCCollection *readParticles();
};
} /* End namespace lcio */
} /* End namespace DD4hep */
#include "lcio.h"
#include "EVENT/LCIO.h"
#include "UTIL/LCStdHepRdr.h"
#include "DD4hep/Primitives.h"
using namespace DD4hep::Simulation;
DECLARE_LCIO_EVENT_READER(LCIOStdHepReader)
LCIOStdHepReader::LCIOStdHepReader(const std::string& nam, int)
: LCIOEventReader(nam)
{
m_reader = new ::lcio::LCStdHepRdr(m_name.c_str());
}
/// Default destructor
LCIOStdHepReader::~LCIOStdHepReader() {
DD4hep::deletePtr(m_reader);
}
/// Read an event and return a LCCollectionVec of MCParticles.
EVENT::LCCollection *LCIOStdHepReader::readParticles() {