thepeg is hosted by Hepforge, IPPP Durham
ThePEG 2.3.0
Reference.xh
1// -*- C++ -*-
2//
3// Reference.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_Reference_XH
10#define ThePEG_Reference_XH
11//
12// This is the declarations of the exception classes used by the
13// Reference class.
14//
15
16#include "InterfaceBase.xh"
17
18namespace ThePEG {
19
20/** @cond EXCEPTIONCLASSES */
21/** Exception class used by Reference if trying to set a pointer of
22 * the wrong type. */
23struct RefExSetRefClass: public InterfaceException {
24 /** Standard constructor. */
25 RefExSetRefClass(const RefInterfaceBase & i, const InterfacedBase & o,
26 cIBPtr r);
27};
28
29/** Exception class used by Referenceif an unknown error occurs. */
30struct RefExSetUnknown: public InterfaceException {
31 /** Standard constructor. */
32 RefExSetUnknown(const InterfaceBase & i, const InterfacedBase & o,
33 cIBPtr r);
34};
35
36/** Exception class used by Reference if an unknown error occurs. */
37struct RefExGetUnknown: public InterfaceException {
38 /** Standard constructor. */
39 RefExGetUnknown(const InterfaceBase & i, const InterfacedBase & o);
40};
41
42/** Exception class used by Reference of a specified object was not
43 * found. */
44struct RefExSetNoobj: public InterfaceException {
45 /** Standard constructor. */
46 RefExSetNoobj(const InterfaceBase & i, const InterfacedBase & o, string);
47};
48
49/** Exception class used by Reference for issuing warnings. */
50struct RefExSetMessage: public InterfaceException {
51 /** Standard constructor. */
52 RefExSetMessage(string ref, const InterfacedBase & o,
53 const InterfacedBase & o2, string);
54};
55/** @endcond */
56
57}
58
59#endif /* ThePEG_Reference_XH */
60