#ifndef USERALG_H #define USERALG_H //#include "HecRunHeader2001v0.h" #include "Headers.h" //#include "HecEvent.h" #include "Event.h" #include "Geometry.h" #include "SystemAlg.h" #include "NoiseAlg.h" /*! -Class: UserAlg - Author: Michel Lefebvre - Date: 27/07/2003 - Description: example UserAlg that uses the NoiseAlg systemAlg to produce the noise for a run. A 2D plot of the log10 of the noise is also generated for the hec and the emec */ class UserAlg : public SystemAlg { public: /** The user should never need to use this contructor * @param event A pointer in the event. Information contained in the event * gets refreshed before the execute method is run * @param hecGeom Pointer to the singleton Geometry object * @param runHeader Pointer to the singleton HecRunHeader object */ UserAlg(Event* event, Geometry* hecGeom, Headers* runHeader); //! Gets run once at the begining of the event Loop bool initialize(); //! Gets run for every event bool execute(); //! Gets run after all events have been executed bool finalize(); private: //################################ // private variables Geometry* m_geo; Event* m_event; Headers* m_runHeader; // pointer to NoiseAlg systemAlg NoiseAlg* m_noise; }; #endif