23 using namespace genie;
47 <<
"InitialState = " << init_state.
AsString();
54 <<
"Unknown InteractionType! Returning NULL InteractionList " 55 <<
"for init-state: " << init_state.
AsString();
62 <<
"Can not handle probe! Returning NULL InteractionList " 63 <<
"for init-state: " << init_state.
AsString();
67 bool hasP = (init_state.
Tgt().
Z() > 0);
68 bool hasN = (init_state.
Tgt().
N() > 0);
74 for(
int inucl=0; inucl<2; inucl++) {
76 int struck_nucleon = nuclpdg[inucl];
79 (struck_nucleon == kPdgNeutron && hasN) ) {
99 for( ; hqi != hq.end(); ++hqi) {
101 int quark_code = hqi->first;
102 bool from_sea = hqi->second;
108 intlist->push_back(intq);
113 intlist->push_back(interaction);
119 if(intlist->size() == 0) {
121 <<
"Returning NULL InteractionList for init-state: " 155 multimap<int,bool> hq;
THE MAIN GENIE PROJECT NAMESPACE
Defines the InteractionListGeneratorI interface. Concrete implementations of this interface generate ...
void SetHitQrkPdg(int pdgc)
bool IsDarkMatter(int pdgc)
InteractionList * CreateInteractionList(const InitialState &init) const
multimap< int, bool > GetHitQuarks(const Interaction *interaction) const
Contains minimal information for tagging exclusive processes.
void SetCharm(int charm_pdgc=0)
Summary information for an interaction.
void LoadConfigData(void)
#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...
A Neutrino Interaction Target. Is a transparent encapsulation of quite different physical systems suc...
virtual void Configure(const Registry &config)
string AsString(void) const
~DMDISInteractionListGenerator()
void SetExclTag(const XclsTag &xcls)
DMDISInteractionListGenerator()
A registry. Provides the container for algorithm configuration parameters.
void SetHitNucPdg(int pdgc)
Target * TgtPtr(void) const
A vector of Interaction objects.
InitialState * InitStatePtr(void) const
void Configure(const Registry &config)
const ProcessInfo & ProcInfo(void) const
bool GetParamDef(const RgKey &name, T &p, const T &def) const
const Target & Tgt(void) const
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.