GENIEGenerator
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
FragmentationFunctionI.h
Go to the documentation of this file.
1 //____________________________________________________________________________
2 /*!
3 
4 \class genie::FragmentationFunctionI
5 
6 \brief Pure abstract base class.
7  Defines the FragmentationFunctionI interface to be implemented by
8  any algorithmic class implementing a fragmentation function.
9 
10 \author Costas Andreopoulos <c.andreopoulos \at cern.ch>
11  University of Liverpool
12 
13 \created June 15, 2004
14 
15 \cpright Copyright (c) 2003-2024, The GENIE Collaboration
16  For the full text of the license visit http://copyright.genie-mc.org
17 */
18 //____________________________________________________________________________
19 
20 #ifndef _FRAGMENTATION_FUNCTION_I_H_
21 #define _FRAGMENTATION_FUNCTION_I_H_
22 
24 
25 namespace genie {
26 
28 
29 public:
30 
31  virtual ~FragmentationFunctionI();
32 
33  //-- define FragmentationFunctionI interface
34 
35  virtual double Value (double z) const = 0;
36  virtual double GenerateZ (void) const = 0;
37 
38 protected:
39 
41  FragmentationFunctionI(string name);
42  FragmentationFunctionI(string name, string config);
43 };
44 
45 } // genie namespace
46 
47 #endif // _FRAGMENTATION_FUNCTION_I_H_
Algorithm abstract base class.
Definition: Algorithm.h:54
Pure abstract base class. Defines the FragmentationFunctionI interface to be implemented by any algor...
virtual double GenerateZ(void) const =0
virtual double Value(double z) const =0