//----------------------------------------------------------- // File and Version Information: // $Id$ // // Description: // Singleton class to configure the odgbstream // // // // Environment: // Software developed for the PANDA Detector at FAIR. // // Author List: // Sebastian Neubert TUM (original author) // // //----------------------------------------------------------- #ifndef DEBUGLOGGER_HH #define DEBUGLOGGER_HH // Base Class Headers ---------------- // Collaborating Class Headers ------- #include // remove if you do not need streaming op #include using std::string; using std::ostream; // Collaborating Class Declarations -- class abslogrule; class DebugLogger { public: // Constructors/Destructors --------- static DebugLogger* Instance(); ~DebugLogger(){;} // Operators // Accessors ----------------------- // Modifiers ----------------------- void addRule(abslogrule* rule); void addRule(string file, string function, unsigned int output); unsigned int addOutput(ostream&); unsigned int addOutFile(string filename); void setLevel(unsigned int l); // Operations ---------------------- protected: DebugLogger(){;} DebugLogger(const DebugLogger&); // forbidden private: // The signleton instance static DebugLogger* _instance; // Private Methods ----------------- bool findFuncInSource(string file,string function, unsigned int& startline, unsigned int& endline); // Private Data Members ------------ }; #endif //-------------------------------------------------------------- // $Log$ //--------------------------------------------------------------