#ifndef _INPUTSOURCE_HH_ #define _INPUTSOURCE_HH_ #ifdef USE_CDFEDM2 ////////////////////////////////////////////////////////////////////////// // // Component: InputSource.hh // Purpose: This is the base class that knows which data to use to // build PhysicsTowers (e.g. CalData or HEPG - as of 30/06/99 // only CalData is implemented) // // Created: 18/06/99 Pierre Savard // History: // ////////////////////////////////////////////////////////////////////////// #include #include #include #include "AbsEnv/AbsEnv.hh" #include "Edm/Id.hh" #include "CalorGeometry/CalConstants.hh" #include "CalorObjects/EnergyData.hh" // namespace calor { class InputSource { public: // // Memory management // // Default constructor // Default copy constructor and assignment operator do the right thing. // Destructor virtual ~InputSource(); // // Testing // // // Manipulation and access // virtual Id initEvent(AbsEvent* anEvent) = 0; virtual Id initEvent(AbsEvent* anEvent, Id objectId) = 0; // Access methods virtual EnergyData* next()= 0; virtual bool done() const = 0; virtual std::string sourceName() const = 0; // // Printing // void print() const; protected: }; // } // namespace calor #endif // USE_CDFEDM2 #endif // _INPUTSOURCE_HH_