GENIEGenerator
Loading...
Searching...
No Matches
AxialFormFactor.h
Go to the documentation of this file.
1//____________________________________________________________________________
2/*!
3
4\class genie::AxialFormFactor
5
6\brief A class holding the Axial Form Factor
7
8 This class is using the \b Strategy Pattern. \n
9
10\author Aaron Meyer <asmeyer2012 \at uchicago.edu>
11
12 based off AxialFormFactor by
13 Costas Andreopoulos <c.andreopoulos \at cern.ch>
14 University of Liverpool
15
16\created August 19, 2013
17
18\cpright Copyright (c) 2003-2025, The GENIE Collaboration
19 For the full text of the license visit http://copyright.genie-mc.org
20*/
21//____________________________________________________________________________
22
23#ifndef _AXIAL_FORM_FACTOR_H_
24#define _AXIAL_FORM_FACTOR_H_
25
26#include <iostream>
27
29
30using std::ostream;
31
32namespace genie {
33
34class Interaction;
35class AxialFormFactor;
36ostream & operator << (ostream & stream, const AxialFormFactor & ff);
37
39
40public:
42 AxialFormFactor(const AxialFormFactor & form_factors);
43 virtual ~AxialFormFactor() { }
44
45 //! Attach an algorithm
46 void SetModel (const AxialFormFactorModelI * model);
47
48 //! Calculate the form factors for the input interaction using the attached algorithm
49 void Calculate (const Interaction * interaction);
50
51 //! Get the computed axial form factor
52 double FA (void) const { return fFA; }
53
54 //! Get the attached model
55 const AxialFormFactorModelI * Model (void) const {return fModel;}
56
57 void Reset (Option_t * opt="");
58 void Copy (const AxialFormFactor & ff);
59 bool Compare (const AxialFormFactor & ff) const;
60 void Print (ostream & stream) const;
61
62 bool operator == (const AxialFormFactor & ff) const;
64 friend ostream & operator << (ostream & stream, const AxialFormFactor & ff);
65
66private:
67
68 double fFA;
69
71};
72
73} // genie namespace
74
75#endif // _AXIAL_FORM_FACTOR_H_
Pure abstract base class. Defines the AxialFormFactorModelI interface to be implemented by LlewellynS...
A class holding the Axial Form Factor.
const AxialFormFactorModelI * Model(void) const
Get the attached model.
bool operator==(const AxialFormFactor &ff) const
const AxialFormFactorModelI * fModel
void Reset(Option_t *opt="")
void SetModel(const AxialFormFactorModelI *model)
Attach an algorithm.
friend ostream & operator<<(ostream &stream, const AxialFormFactor &ff)
bool Compare(const AxialFormFactor &ff) const
void Print(ostream &stream) const
void Copy(const AxialFormFactor &ff)
void Calculate(const Interaction *interaction)
Calculate the form factors for the input interaction using the attached algorithm.
AxialFormFactor & operator=(const AxialFormFactor &ff)
double FA(void) const
Get the computed axial form factor.
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)