GENIEGenerator
Loading...
Searching...
No Matches
HadronTensorModelI.h
Go to the documentation of this file.
1//____________________________________________________________________________
2/*!
3
4\class genie::HadronTensorModelI
5
6\brief Creates hadron tensor objects for use in cross section calculations
7
8\author Steven Gardiner <gardiner \at fnal.gov>
9 Fermi National Accelerator Laboratory
10
11\created April 26, 2019
12
13\cpright Copyright (c) 2003-2025, The GENIE Collaboration
14 For the full text of the license visit http://copyright.genie-mc.org
15 or see $GENIE/LICENSE
16*/
17//____________________________________________________________________________
18
19#ifndef _HADRON_TENSOR_MODEL_H_
20#define _HADRON_TENSOR_MODEL_H_
21
22// standard library includes
23#include <map>
24#include <string>
25#include <vector>
26
27// GENIE includes
30
31namespace genie {
32
34
35public:
36 virtual ~HadronTensorModelI();
37
38 /// Retrieves a pointer to a hadron tensor object appropriate for this model
39 /// \param[in] tensor_pdg The PDG code for the nuclide described by the tensor
40 /// \param[in] type The desired kind of hadron tensor
41 /// \returns A pointer to the requested hadron tensor, or NULL if a match
42 /// could not be found/created
43 virtual const HadronTensorI* GetTensor(int tensor_pdg, HadronTensorType_t type) const = 0;
44
45protected:
47 HadronTensorModelI(std::string name);
48 HadronTensorModelI(std::string name, std::string config);
49};
50
51} // namespace genie
52
53#endif // _HADRON_TENSOR_MODEL_H_
Abstract interface for an object that computes the elements a hadron tensor . Also computes the contr...
virtual const HadronTensorI * GetTensor(int tensor_pdg, HadronTensorType_t type) const =0
THE MAIN GENIE PROJECT NAMESPACE
Definition AlgCmp.h:25
enum genie::HadronTensorType HadronTensorType_t