#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 "OccupancyAlg.h" /*! -Class: UserAlg - Author: Michel Lefebvre - Date: 29/07/2003 - Description: example UserAlg that uses the OccupancyAlg systemAlg to read occupancy files (which are assumed to exist). The defauls file names are used which means that the occupancy files to be read will depend on the run analysed, even though the actual data will not be used. A febno keyed map is then made of the channels with occupancy greater than a value (occCut = 0.1) and the corresponding 2D plots are drawn. */ 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 OccupancyAlg* m_occupancy; }; #endif