thepeg is hosted by Hepforge, IPPP Durham
ThePEG  2.2.1
ParVector.xh
1 // -*- C++ -*-
2 //
3 // ParVector.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_ParVector_XH
10 #define ThePEG_ParVector_XH
11 //
12 // This is the declarations of the exception classes used by the
13 // ParVector class.
14 //
15 
16 #include "InterfaceBase.xh"
17 
18 namespace ThePEG {
19 
20 /** @cond EXCEPTIONCLASSES */
21 /** Exception class used by ParVector if a value is set outside the
22  * given limits. */
23 struct ParVExLimit: public InterfaceException {
24  /** Standard constructor. */
25  template <typename T>
26  ParVExLimit(const InterfaceBase & i, const InterfacedBase & o, T v);
27 };
28 
29 /** Exception class used by ParVector if an unknown error was encountered. */
30 struct ParVExUnknown: public InterfaceException {
31  /** Standard constructor. */
32  template <typename T>
33  ParVExUnknown(const InterfaceBase & i, const InterfacedBase & o,
34  T v, int j, const char * s);
35 };
36 
37 /** Exception class used by ParVector if an index is outside the given
38  * limits. */
39 struct ParVExIndex: public InterfaceException {
40  /** Standard constructor. */
41  ParVExIndex(const InterfaceBase & i, const InterfacedBase & o, int index);
42 };
43 
44 /** Exception class used by ParVector if the size of a fixed-size
45  * container is changed. */
46 struct ParVExFixed: public InterfaceException {
47  /** Standard constructor. */
48  ParVExFixed(const InterfaceBase & i, const InterfacedBase & o);
49 };
50 
51 /** Exception class used by ParVector if an unknown error was encountered. */
52 struct ParVExDelUnknown: public InterfaceException {
53  /** Standard constructor. */
54  ParVExDelUnknown(const InterfaceBase & i, const InterfacedBase & o, int j);
55 };
56 
57 /** Exception class used by ParVector if an unknown error was encountered. */
58 struct ParVExGetUnknown: public InterfaceException {
59  /** Standard constructor. */
60  ParVExGetUnknown(const InterfaceBase & i,
61  const InterfacedBase & o, const char * s);
62 };
63 /** @endcond */
64 
65 }
66 
67 #endif /* ThePEG_ParVector_XH */
68