// Reporter.h #ifndef trf__Reporter_H #define trf__Reporter_H // Abstract interface for a reporter. // // Reporters are held by TrfObjects which call them to report their // status when active. For example, a TrackFinder might report the list // of extended tracks. // // The reporter subclass defines the format of the report. It might // be text, ntuple or graphical display. // // Reporters inherit from ObjType so they can be constructed from OBS // files. // // Reporting is accomplished with the overloaded free function report // described below. #include "objstream/ObjType.hpp" #include "Message.h" namespace trf { class Reporter : public ObjType { public: // methods // Destructor. virtual ~Reporter(); // Report a message. virtual void report(const AbsMessage& msg) =0; }; } // end namespace trf #endif