GridFire 0.0.1a
General Purpose Nuclear Network
|
Abstract base class for a "view" of a reaction network engine. More...
#include <engine_view_abstract.h>
Public Member Functions | |
virtual | ~EngineView ()=default |
Virtual destructor. | |
virtual const EngineT & | getBaseEngine () const =0 |
Access the underlying engine instance. | |
Abstract base class for a "view" of a reaction network engine.
EngineT | The engine type being viewed (must satisfy EngineType). |
EngineView provides an interface for accessing an underlying engine instance, while presenting a potentially modified or reduced network structure to the user. This enables dynamic or adaptive network topologies (e.g., culling, masking, or remapping of species and reactions) without altering the core physics engine.
Intended usage: Derive from this class to implement a custom view or wrapper that manages a dynamic or adaptive network structure, delegating core calculations to the base engine. The contract is that getBaseEngine() must return a reference to the underlying engine instance, which remains responsible for the full physics.
Example (see also AdaptiveEngineView):
Definition at line 74 of file engine_view_abstract.h.
|
virtualdefault |
Virtual destructor.
|
pure virtual |
Access the underlying engine instance.
This method must be implemented by derived classes to provide access to the base engine. The returned reference should remain valid for the lifetime of the EngineView.
Example:
Implemented in gridfire::AdaptiveEngineView, and gridfire::FileDefinedEngineView.