00001 /* 00002 * IssueFactoryIssue.h 00003 * ers 00004 * 00005 * Created by Matthias Wiesmann on 04.01.05. 00006 * Copyright 2005 CERN. All rights reserved. 00007 * 00008 */ 00009 00010 #ifndef ERS_ISSUE_FACTORY_ISSUE 00011 #define ERS_ISSUE_FACTORY_ISSUE 00012 00013 #include "ers/Issue.h" 00014 00015 namespace ers { 00016 00024 class IssueFactoryIssue : public Issue { 00025 00026 protected: 00027 IssueFactoryIssue(const Context &context, severity_t s); 00028 public: 00029 static const char* const CLASS_NAME ; 00030 00031 IssueFactoryIssue() ; 00032 IssueFactoryIssue(const Context &context, severity_t s, const std::string&name, const std::string &message); 00033 00034 const char *get_class_name() const throw() ; 00035 } ; // IssueFactoryIssue 00036 00037 00038 } // ers 00039 00043 #define ERS_ISSUE_FACTORY_ERROR(name,message) IssueFactoryIssue(ERS_HERE,ers::error,name,message) 00044 00045 #endif 00046