18 using namespace genie;
42 <<
"InitialState = " << init_state.
AsString();
50 <<
"Unknown InteractionType! Returning NULL InteractionList " 51 <<
"for init-state: " << init_state.
AsString();
58 <<
"Can not handle probe! Returning NULL InteractionList " 59 <<
"for init-state: " << init_state.
AsString();
63 bool hasP = (init_state.
Tgt().
Z() > 0);
64 bool hasN = (init_state.
Tgt().
N() > 0);
70 for(
int inucl=0; inucl<2; inucl++) {
72 int struck_nucleon = nuclpdg[inucl];
75 (struck_nucleon == kPdgNeutron && hasN) ) {
95 for( ; hqi != hq.end(); ++hqi) {
97 int quark_code = hqi->first;
98 bool from_sea = hqi->second;
104 intlist->push_back(intq);
109 intlist->push_back(interaction);
115 if(intlist->size() == 0) {
117 <<
"Returning NULL InteractionList for init-state: " 153 multimap<int,bool> hq;
void LoadConfigData(void)
DISInteractionListGenerator()
bool IsWeakCC(void) const
bool IsNeutrino(int pdgc)
THE MAIN GENIE PROJECT NAMESPACE
Defines the InteractionListGeneratorI interface. Concrete implementations of this interface generate ...
void SetHitQrkPdg(int pdgc)
Contains minimal information for tagging exclusive processes.
void SetCharm(int charm_pdgc=0)
Summary information for an interaction.
bool IsWeakNC(void) const
#define LOG(stream, priority)
A macro that returns the requested log4cpp::Category appending a string (using the FILE...
A class encapsulating an enumeration of interaction types (EM, Weak-CC, Weak-NC) and scattering types...
bool IsAntiNeutrino(int pdgc)
A Neutrino Interaction Target. Is a transparent encapsulation of quite different physical systems suc...
virtual void Configure(const Registry &config)
string AsString(void) const
void Configure(const Registry &config)
void SetExclTag(const XclsTag &xcls)
A registry. Provides the container for algorithm configuration parameters.
void SetHitNucPdg(int pdgc)
Target * TgtPtr(void) const
InteractionList * CreateInteractionList(const InitialState &init) const
A vector of Interaction objects.
InitialState * InitStatePtr(void) const
const InitialState & InitState(void) const
const ProcessInfo & ProcInfo(void) const
multimap< int, bool > GetHitQuarks(const Interaction *interaction) const
bool GetParamDef(const RgKey &name, T &p, const T &def) const
const Target & Tgt(void) const
~DISInteractionListGenerator()
void SetHitSeaQrk(bool tf)
Most commonly used PDG codes. A set of utility functions to handle PDG codes is provided in PDGUtils...
enum genie::EInteractionType InteractionType_t
Initial State information.