thepeg is hosted by Hepforge, IPPP Durham
ThePEG  2.2.1
CKMBase.h
1 // -*- C++ -*-
2 //
3 // CKMBase.h 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_CKMBase_H
10 #define ThePEG_CKMBase_H
11 // This is the declaration of the CKMBase class.
12 
13 #include "ThePEG/Interface/Interfaced.h"
14 #include "StandardModelBase.fh"
15 
16 namespace ThePEG {
17 
27 class CKMBase: public Interfaced {
28 
29 public:
30 
36  virtual vector< vector<double> > getMatrix(unsigned int nf) const = 0;
37 
38 public:
39 
43  static void Init();
44 
45 private:
46 
51 
55  CKMBase & operator=(const CKMBase &) = delete;
56 
57 };
58 
63 template <>
64 struct BaseClassTrait<CKMBase,1>: public ClassTraitsType {
66  typedef Interfaced NthBase;
67 };
68 
71 template <>
72 struct ClassTraits<CKMBase>: public ClassTraitsBase<CKMBase> {
74  static string className() { return "ThePEG::CKMBase"; }
75 };
76 
79 }
80 
81 #endif /* ThePEG_CKMBase_H */
ClassTraitsType is an empty, non-polymorphic, base class.
Definition: ClassTraits.h:30
virtual vector< vector< double > > getMatrix(unsigned int nf) const =0
Return the matrix of squared CKM matrix elements.
CKMBase & operator=(const CKMBase &)=delete
Private and non-existent assignment operator.
This is the main namespace within which all identifiers in ThePEG are declared.
Definition: FactoryBase.h:28
static AbstractNoPIOClassDescription< CKMBase > initCKMBase
Describe an abstract class without persistent data.
Definition: CKMBase.h:50
CKMBase is an abstract base classused by the StandardModelBase to implement the Cabibbo-Kobayashi-Mas...
Definition: CKMBase.h:27
A concreate implementation of ClassDescriptionBase describing an abstract class without persistent da...
static void Init()
Standard Init function used to initialize the interface.
The Interfaced class is derived from the InterfacedBase class adding a couple of things particular to...
Definition: Interfaced.h:38
The default concrete implementation of ClassTraitsBase.
Definition: ClassTraits.h:134
BaseClassTraits describes the base classes of the templated class.
Definition: ClassTraits.h:156
The templated ClassTraitsBase class defines a set of default information about classes used by ThePEG...
Definition: ClassTraits.h:52