GENIEGenerator
Loading...
Searching...
No Matches
ELFormFactors.h
Go to the documentation of this file.
1//____________________________________________________________________________
2/*!
3
4\class genie::ELFormFactors
5
6\brief A class holding the Elastic Form Factors Ge,Gm
7
8 This class is using the \b Strategy Pattern. \n
9
10\author Costas Andreopoulos <c.andreopoulos \at cern.ch>
11 University of Liverpool
12
13\created Apr 20, 2004
14
15\cpright Copyright (c) 2003-2025, The GENIE Collaboration
16 For the full text of the license visit http://copyright.genie-mc.org
17*/
18//____________________________________________________________________________
19
20#ifndef _EL_FORM_FACTORS_H_
21#define _EL_FORM_FACTORS_H_
22
23#include <iostream>
24
26
27using std::ostream;
28
29namespace genie {
30
31class ELFormFactors;
32class Interaction;
33
34ostream & operator << (ostream & stream, const ELFormFactors & ff);
35
37
38public:
40 ELFormFactors(const ELFormFactors & form_factors);
41 virtual ~ELFormFactors() { }
42
43 //! Attach an algorithm
44 void SetModel (const ELFormFactorsModelI * model);
45
46 //! Calculate the form factors for the input interaction using the attached algorithm
47 void Calculate (const Interaction * interaction);
48
49 //! Get the computed form factor Gep
50 double Gep (void) const { return fGep; }
51
52 //! Get the computed form factor Gmp
53 double Gmp (void) const { return fGmp; }
54
55 //! Get the computed form factor Gen
56 double Gen (void) const { return fGen; }
57
58 //! Get the computed form factor Gmn
59 double Gmn (void) const { return fGmn; }
60
61 //! Get the attached model
62 const ELFormFactorsModelI * Model (void) const {return fModel;}
63
64 void Reset (Option_t * opt="");
65 void Copy (const ELFormFactors & ff);
66 bool Compare (const ELFormFactors & ff) const;
67 void Print (ostream & stream) const;
68
69 bool operator == (const ELFormFactors & ff) const;
71 friend ostream & operator << (ostream & stream, const ELFormFactors & ff);
72
73private:
74
75 double fGep;
76 double fGmp;
77 double fGen;
78 double fGmn;
79
81};
82
83} // genie namespace
84
85#endif // _QEL_FORM_FACTORS_H_
Pure abstract base class. Defines the ELFormFactorsModelI interface to be implemented by any algorith...
A class holding the Elastic Form Factors Ge,Gm.
ELFormFactors & operator=(const ELFormFactors &ff)
double Gmp(void) const
Get the computed form factor Gmp.
friend ostream & operator<<(ostream &stream, const ELFormFactors &ff)
double Gep(void) const
Get the computed form factor Gep.
double Gen(void) const
Get the computed form factor Gen.
void Print(ostream &stream) const
void Copy(const ELFormFactors &ff)
double Gmn(void) const
Get the computed form factor Gmn.
void Reset(Option_t *opt="")
bool Compare(const ELFormFactors &ff) const
void Calculate(const Interaction *interaction)
Calculate the form factors for the input interaction using the attached algorithm.
bool operator==(const ELFormFactors &ff) const
const ELFormFactorsModelI * Model(void) const
Get the attached model.
void SetModel(const ELFormFactorsModelI *model)
Attach an algorithm.
const ELFormFactorsModelI * fModel
Summary information for an interaction.
Definition Interaction.h:56
THE MAIN GENIE PROJECT NAMESPACE
Definition AlgCmp.h:25
ostream & operator<<(ostream &stream, const AlgConfigPool &config_pool)