#pragma once #include <string> #include <vector> class EventList; class EventReader { public: EventReader(); EventReader(bool useWeight); virtual ~EventReader(); virtual bool fillAll(EventList& evtList) = 0; virtual bool fillMassRange(EventList& evtList, double massMin, double massMax, std::vector<unsigned int>& particleIndices){ _useMassRange=true; _massMin = massMin; _massMax = massMax; _particleIdxesMassRange=particleIndices; return fillAll(evtList); }; protected: bool _useWeight; bool _useMassRange; double _massMin; double _massMax; std::vector<unsigned int> _particleIdxesMassRange; bool isMassrangeParticle(int index); };