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