ThePEG  1.8.0
ParVector.xh
1 // -*- C++ -*-
2 //
3 // ParVector.xh is a part of ThePEG - Toolkit for HEP Event Generation
4 // Copyright (C) 1999-2011 Leif Lonnblad
5 //
6 // ThePEG is licenced under version 2 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 
23 struct ParVExLimit: public InterfaceException {
25  template <typename T>
26  ParVExLimit(const InterfaceBase & i, const InterfacedBase & o, T v);
27 };
28 
30 struct ParVExUnknown: public InterfaceException {
32  template <typename T>
33  ParVExUnknown(const InterfaceBase & i, const InterfacedBase & o,
34  T v, int j, const char * s);
35 };
36 
39 struct ParVExIndex: public InterfaceException {
41  ParVExIndex(const InterfaceBase & i, const InterfacedBase & o, int index);
42 };
43 
46 struct ParVExFixed: public InterfaceException {
48  ParVExFixed(const InterfaceBase & i, const InterfacedBase & o);
49 };
50 
52 struct ParVExDelUnknown: public InterfaceException {
54  ParVExDelUnknown(const InterfaceBase & i, const InterfacedBase & o, int j);
55 };
56 
58 struct ParVExGetUnknown: public InterfaceException {
60  ParVExGetUnknown(const InterfaceBase & i,
61  const InterfacedBase & o, const char * s);
62 };
65 }
66 
67 #endif /* ThePEG_ParVector_XH */
68