thepeg is hosted by Hepforge, IPPP Durham
ThePEG  2.2.1
Parameter.xh
1 // -*- C++ -*-
2 //
3 // Parameter.xh is a part of ThePEG - Toolkit for HEP Event Generation
4 // Copyright (C) 1999-2019 Leif Lonnblad
5 //
6 // ThePEG is licenced under version 3 of the GPL, see COPYING for details.
7 // Please respect the MCnet academic guidelines, see GUIDELINES for details.
8 //
9 #ifndef ThePEG_Parameter_XH
10 #define ThePEG_Parameter_XH
11 //
12 // This is the declarations of the exception classes used by the
13 // Parameter class.
14 //
15 
16 #include "InterfaceBase.xh"
17 
18 namespace ThePEG {
19 
20 /** @cond EXCEPTIONCLASSES */
21 /** Exception class used by Parameter if variable is set outside the
22  * specified limits. */
23 struct ParExSetLimit: public InterfaceException {
24  /** Standard constructor. */
25  template <typename T>
26  ParExSetLimit(const InterfaceBase & i,
27  const InterfacedBase & o, T v);
28 };
29 
30 /** Exception class used by Parameter if an unkown error
31  * occurs. */
32 struct ParExSetUnknown: public InterfaceException {
33  /** Standard constructor. */
34  template <typename T>
35  ParExSetUnknown(const InterfaceBase & i,
36  const InterfacedBase & o, T val);
37 };
38 
39 /** Exception class used by Parameter if an unkown error
40  * occurs. */
41 struct ParExGetUnknown: public InterfaceException {
42  /** Standard constructor. */
43  ParExGetUnknown(const InterfaceBase & i,
44  const InterfacedBase & o, const char *);
45 };
46 /** @endcond */
47 
48 }
49 
50 #endif /* ThePEG_Parameter_XH */
51