00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef ThePEG_InterfaceBase_XH
00010 #define ThePEG_InterfaceBase_XH
00011
00012
00013
00014
00015
00016 #include "InterfaceBase.fh"
00017 #include "ThePEG/Utilities/Exception.h"
00018
00019 namespace ThePEG {
00020
00024 struct InterfaceException: public Exception {
00026 InterfaceException() {};
00027 };
00028
00031 struct InterExClass: public InterfaceException {
00033 InterExClass(const InterfaceBase & i, const InterfacedBase & o);
00034 };
00035
00038 struct InterExSetup: public InterfaceException {
00040 InterExSetup(const InterfaceBase & i, const InterfacedBase & o);
00041 };
00042
00045 struct InterExUnknown: public InterfaceException {
00047 InterExUnknown(const InterfaceBase & i, const InterfacedBase & o);
00048 };
00049
00052 struct InterExReadOnly: public InterfaceException {
00054 InterExReadOnly(const InterfaceBase & i, const InterfacedBase & o);
00055 };
00056
00059 struct InterExNoNull: public InterfaceException {
00061 InterExNoNull(const InterfaceBase & i, const InterfacedBase & o);
00062 };
00065 }
00066
00067 #endif