|
GridFire v0.7.1_rc2
General Purpose Nuclear Network
|
Abstract interface encapsulating a set of reactions representing a single chain or pathway. More...
#include <policy_abstract.h>
Public Member Functions | |
| virtual | ~ReactionChainPolicy ()=default |
| virtual const reaction::ReactionSet & | get_reactions () const =0 |
| Returns the ReactionSet describing this chain. | |
| virtual bool | contains (const std::string &id) const =0 |
| virtual bool | contains (const reaction::Reaction &reaction) const =0 |
| virtual std::unique_ptr< ReactionChainPolicy > | clone () const =0 |
| virtual std::string | name () const =0 |
| virtual uint64_t | hash (uint64_t seed) const =0 |
| virtual bool | operator== (const ReactionChainPolicy &other) const =0 |
| virtual bool | operator!= (const ReactionChainPolicy &other) const =0 |
Friends | |
| std::ostream & | operator<< (std::ostream &os, const ReactionChainPolicy &rcp) |
Abstract interface encapsulating a set of reactions representing a single chain or pathway.
ReactionChainPolicy implementations (see chains.h) supply a ReactionSet describing the reactions that comprise a nuclear reaction chain (for example the proton-proton chain, CNO cycle, etc.).
chains.h for details.
|
virtualdefault |
|
pure virtual |
Implemented in gridfire::policy::ProtonProtonIChainPolicy, gridfire::policy::ProtonProtonIIChainPolicy, gridfire::policy::ProtonProtonIIIChainPolicy, gridfire::policy::CNOIChainPolicy, gridfire::policy::CNOIIChainPolicy, gridfire::policy::CNOIIIChainPolicy, gridfire::policy::CNOIVChainPolicy, gridfire::policy::HotCNOIChainPolicy, gridfire::policy::HotCNOIIChainPolicy, gridfire::policy::HotCNOIIIChainPolicy, gridfire::policy::TripleAlphaChainPolicy, gridfire::policy::MultiReactionChainPolicy, and PyReactionChainPolicy.
|
pure virtual |
|
pure virtual |
|
pure virtual |
Returns the ReactionSet describing this chain.
| gridfire::exceptions::MissingBaseReactionError | may be thrown by concrete implementations at construction time if the required reactions cannot be found in the base reaction set. |
Implemented in gridfire::policy::TemperatureDependentChainPolicy, gridfire::policy::MultiReactionChainPolicy, and PyReactionChainPolicy.
|
pure virtual |
|
pure virtual |
Implemented in gridfire::policy::ProtonProtonIChainPolicy, gridfire::policy::ProtonProtonIIChainPolicy, gridfire::policy::ProtonProtonIIIChainPolicy, gridfire::policy::ProtonProtonChainPolicy, gridfire::policy::CNOIChainPolicy, gridfire::policy::CNOIIChainPolicy, gridfire::policy::CNOIIIChainPolicy, gridfire::policy::CNOIVChainPolicy, gridfire::policy::CNOChainPolicy, gridfire::policy::HotCNOIChainPolicy, gridfire::policy::HotCNOIIChainPolicy, gridfire::policy::HotCNOIIIChainPolicy, gridfire::policy::HotCNOChainPolicy, gridfire::policy::TripleAlphaChainPolicy, gridfire::policy::MainSequenceReactionChainPolicy, gridfire::policy::MultiReactionChainPolicy, and PyReactionChainPolicy.
|
pure virtual |
|
pure virtual |
|
friend |