Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-08-06 09:20:03

0001 
0002 /***********************************************************************
0003 * Copyright 1998-2020 CERN for the benefit of the EvtGen authors       *
0004 *                                                                      *
0005 * This file is part of EvtGen.                                         *
0006 *                                                                      *
0007 * EvtGen is free software: you can redistribute it and/or modify       *
0008 * it under the terms of the GNU General Public License as published by *
0009 * the Free Software Foundation, either version 3 of the License, or    *
0010 * (at your option) any later version.                                  *
0011 *                                                                      *
0012 * EvtGen is distributed in the hope that it will be useful,            *
0013 * but WITHOUT ANY WARRANTY; without even the implied warranty of       *
0014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        *
0015 * GNU General Public License for more details.                         *
0016 *                                                                      *
0017 * You should have received a copy of the GNU General Public License    *
0018 * along with EvtGen.  If not, see <https://www.gnu.org/licenses/>.     *
0019 ***********************************************************************/
0020 
0021 #ifndef EVTSEMILEPTONICFF_HH
0022 #define EVTSEMILEPTONICFF_HH
0023 
0024 #include "EvtGenBase/EvtId.hh"
0025 
0026 class EvtSemiLeptonicFF {
0027   public:
0028     virtual ~EvtSemiLeptonicFF(){};
0029 
0030     virtual void getscalarff( EvtId parent, EvtId daught, double t, double mass,
0031                               double* fpf, double* fmf ) = 0;
0032     virtual void getvectorff( EvtId parent, EvtId daught, double t, double mass,
0033                               double* a1f, double* a2f, double* vf,
0034                               double* a0f ) = 0;
0035     virtual void gettensorff( EvtId parent, EvtId daught, double t, double mass,
0036                               double* a1f, double* a2f, double* vf,
0037                               double* a0f ) = 0;
0038 
0039     virtual void getbaryonff( EvtId parent, EvtId daught, double t,
0040                               double m_meson, double* f1v, double* f1a,
0041                               double* f2v, double* f2a ) = 0;
0042 
0043     virtual void getdiracff( EvtId parent, EvtId daught, double q2, double mass,
0044                              double* f1, double* f2, double* f3, double* g1,
0045                              double* g2, double* g3 ) = 0;
0046 
0047     virtual void getraritaff( EvtId parent, EvtId daught, double q2,
0048                               double mass, double* f1, double* f2, double* f3,
0049                               double* f4, double* g1, double* g2, double* g3,
0050                               double* g4 ) = 0;
0051 };
0052 
0053 #endif