CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
ErrorThrower.h
Go to the documentation of this file.
1 #ifndef DataFormats_FWLite_ErrorThrower_h
2 #define DataFormats_FWLite_ErrorThrower_h
3 // -*- C++ -*-
4 //
5 // Package: FWLite
6 // Class : ErrorThrower
7 //
16 //
17 // Original Author: Chris Jones
18 // Created: Tue Sep 23 09:58:07 EDT 2008
19 // $Id$
20 //
21 
22 #if !defined(__CINT__) && !defined(__MAKECINT__)
23 // system include files
24 #include <typeinfo>
25 
26 // user include files
27 
28 // forward declarations
29 namespace fwlite {
30  class ErrorThrower {
31 
32  public:
33  ErrorThrower();
34  virtual ~ErrorThrower();
35 
36  // ---------- const member functions ---------------------
37  virtual void throwIt() const =0;
38  virtual ErrorThrower* clone() const =0;
39 
40  // ---------- static member functions --------------------
42  static ErrorThrower* errorThrowerBranchNotFoundException(const std::type_info&, const char*, const char*, const char*);
43  static ErrorThrower* errorThrowerProductNotFoundException(const std::type_info&, const char*, const char*, const char*);
44 
45  // ---------- member functions ---------------------------
46 
47  private:
48  //ErrorThrower(const ErrorThrower&); // stop default
49 
50  //const ErrorThrower& operator=(const ErrorThrower&); // stop default
51 
52  // ---------- member data --------------------------------
53 
54  };
55 
56 }
57 #endif
58 #endif
static ErrorThrower * unsetErrorThrower()
static ErrorThrower * errorThrowerBranchNotFoundException(const std::type_info &, const char *, const char *, const char *)
virtual ErrorThrower * clone() const =0
static ErrorThrower * errorThrowerProductNotFoundException(const std::type_info &, const char *, const char *, const char *)
virtual void throwIt() const =0