ThePEG  1.8.0
Deleted.h
1 // -*- C++ -*-
2 //
3 // Deleted.h 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_Deleted_H
10 #define ThePEG_Deleted_H
11 // This is the declaration of the Deleted and DeletedBase classes.
12 
13 #include "ThePEG/Config/ThePEG.h"
14 #include "InterfaceBase.h"
15 
16 namespace ThePEG {
17 
44 class DeletedBase: public InterfaceBase {
45 
46 public:
47 
62  DeletedBase(string newName, string newDescription, string newClassName,
63  const type_info & newTypeInfo)
64  : InterfaceBase(newName, newDescription, newClassName,
65  newTypeInfo, true, false) {
66  rank(-1.0e10);
67  }
68 
75  virtual string
76  exec(InterfacedBase &ib, string action, string arguments) const
77  ;
78 
83  virtual string doxygenType() const;
84 
88  virtual string type() const;
89 
90 };
91 
118 template <class T>
119 class Deleted: public DeletedBase {
120 
121 public:
122 
132  Deleted(string newName, string newDescription)
133  : DeletedBase(newName, newDescription,
134  ClassTraits<T>::className(), typeid(T)) {}
135 
136 };
137 
138 }
139 
140 #endif /* ThePEG_Deleted_H */