|
The Sparta Modeling Framework
|
Simulator which builds a sparta DeviceTree. More...
#include <Simulation.hpp>


Classes | |
| class | SimulationController |
| This class is used for simulation control callbacks. More... | |
Public Types | |
| enum | CounterSemantic { CSEM_INSTRUCTIONS = 0 } |
| Types of semantics attached to certain counters. It is the responsibility of subclasses to implement findSemanticCounter such taht it can satisfy requests for counters having these semantics. More... | |
Public Member Functions | |
| Simulation ()=delete | |
| Not default-constructable. | |
| Simulation (const Simulation &)=delete | |
| Not copy-constructable. | |
| Simulation (Simulation &&)=delete | |
| Not move-constructable. | |
| Simulation & | operator= (const Simulation &)=delete |
| Not assignable. | |
| Simulation (const std::string &sim_name, Scheduler *scheduler) | |
| Deferred configuration constructor. Subsequent call to configure must be made before building/configuring/finalizing. | |
| virtual | ~Simulation () |
| Virtual destructor. | |
| void | setFeatureConfig (const FeatureConfiguration *feature_config) |
| Set a collection of feature name-value pairs. | |
| void | configure (const int argc, char **argv, SimulationConfiguration *configuration, const bool use_pyshell=false) |
| Configures the simulator after construction. Necessary only when using the simple constructor. | |
| void | addReport (const ReportDescriptor &rep) |
| Add a report. | |
| void | installTaps (const log::TapDescVec &taps) |
| Add new taps the the simulation immediately IF possible. | |
| sparta::RootTreeNode * | getRoot () noexcept |
| Returns the tree root. | |
| sparta::app::MetaTreeNode * | getMetaParamRoot () const noexcept |
| Returns the Meta TreeNode root. | |
| const sparta::RootTreeNode * | getRoot () const noexcept |
| Returns the tree root (const) | |
| sparta::Scheduler * | getScheduler () |
| Returns the simulation's scheduler. | |
| const sparta::Scheduler * | getScheduler () const |
| Returns the simulation's scheduler. | |
| simdb::AppManagers * | getAppManagers () const |
| Get access to the SimDB AppManagers and their associated DatabaseManagers. | |
| bool | usingFinalConfig () const |
| Returns whether or not the simulator was configured using a final configuration option, likely via the –read-final-config cml option. | |
| bool | readyToRun () const |
| Is the framework ready to run. | |
| sparta::Clock * | getRootClock () noexcept |
| Returns the root clock. | |
| const sparta::Clock * | getRootClock () const noexcept |
| Returns the root clock (const) | |
| sparta::ClockManager & | getClockManager () noexcept |
| Returns the clock manager. | |
| sparta::ResourceSet * | getResourceSet () noexcept |
| Returns the resource set for this Simulation. | |
| const std::string & | getSimName () const noexcept |
| Returns this simulator's name. | |
| SimulationConfiguration * | getSimulationConfiguration () const |
| Returns this simulator's configuration. | |
| const FeatureConfiguration * | getFeatureConfiguration () const |
| Returns this simulator's feature configuration. | |
| ReportConfiguration * | getReportConfiguration () const |
| Get this simulator's report configuration. | |
| void | buildTree () |
| Builds hard-coded device tree. | |
| void | configureTree () |
| Configure the tree with some node-local config files, params, and node-specific parameters. | |
| void | finalizeTree () |
| Finalizes the device tree. | |
| void | finalizeFramework () |
| Finalize framework before running. | |
| virtual void | run (uint64_t run_time) |
| Run for specified "time" or less. | |
| virtual void | runRaw (uint64_t run_time) |
| Runs the simulation for a limited run time, returning when done. | |
| virtual void | asyncStop () |
| Asynchronously stop the run. | |
| void | dumpDebugContentIfAllowed (std::exception_ptr eptr, bool forcec=false) noexcept |
| Determine if debug content needs to be dumped and dump if so. Uses dumpDebugContent to dump. | |
| void | saveReports () |
| Writes all reports to their respective files. | |
| void | postProcessingLastCall () |
| After CommandLineSimulator runs the simulation and calls all post-processing APIs, this method will be called. It is the only thing left before our destructor gets called. Do any last- minute final wrap up work if needed in this method. | |
| const CounterBase * | findSemanticCounter (CounterSemantic sem) const |
| Get a counter by its semantic (if such a counter exists). | |
| bool | simulationSuccessful () const |
| Was simulation successful? | |
| uint64_t | numFired () |
| return the number of events fired on the scheduler during simulation. | |
| void | enablePostRunValidation () |
| Enable post-run validation explicity. | |
| std::string | getPipelineCollectionPrefix () const |
| Gets the pipeline collection path. | |
| bool | usingPyshell () const |
| Was this simulation configured with a Python shell? | |
| virtual sparta::control::TemporaryRunControl * | getRunControlInterface () |
| Get the run control interface for this simulation. This must exist for the lifetime of this simulation. | |
| void | dumpMetaParameterTable (std::ostream &out) const |
| Write meta-data tree parameters to given ostream. | |
Protected Member Functions | |
| void | setSimulationController_ (std::shared_ptr< SimulationController > controller) |
| Set a controller to handle custom simulation events. | |
| void | pause_ () |
| Triggered simulation pause callback. | |
| void | resume_ () |
| Triggered simulation resume callback. | |
| void | terminate_ () |
| Triggered simulation terminate callback. | |
| void | customEvent_ (const std::string &event_name) |
| Triggered simulation custom named event. | |
| void | setupControllerTriggers_ () |
| Initialization of custom simulation event triggers. | |
| uint32_t | dumpNonDefaultParameters_ (TreeNode *root, std::ostream &out) |
| Print and count the number of Parameters which have had their values changed to something different than the default. | |
| uint32_t | countNonDefaultParameters_ (TreeNode *root) |
| Same counting behavior as dumpNonDefaultParameters_ but does not print. | |
| uint32_t | reapplyVolatileParameters_ (TreeNode *root) |
| Re-read volatile parameter values from the virtual tree and write them to the parmeters. This is used by simulators if special parmeter application ordering is required. | |
| uint32_t | reapplyAllParameters_ (TreeNode *root) |
| Re-read all parameter values from the virtual tree. | |
| void | addTreeNodeExtensionFactory_ (const std::string &extension_name, std::function< TreeNode::ExtensionsBase *()> factory) |
| Include an extension factory for this simulation's device tree nodes. They will be given to specific tree nodes right after they are instantiated. Which extension(s) go to which tree node(s) is determined by configuration files. | |
| virtual void | runControlLoop_ (uint64_t run_time) |
| Enter run-control loop causing the simulator to run or give control to an interactive shell. | |
| virtual void | runRaw_ (uint64_t run_time) |
| Run for specified "time". | |
| virtual const CounterBase * | findSemanticCounter_ (CounterSemantic sem) const |
| Implements findSemanticCounter. | |
| bool | dumpDebugContent_ (std::string &filename, const std::string &exception, const std::string &backtrace) noexcept |
| Dump debug content to a timestamped file regardless of debug-dumping control flags. | |
| void | delayedPeventStart_ () |
| a Callback that officially starts pevent collection. | |
| void | rootDescendantAdded_ (const sparta::TreeNode &node_added) |
| Notification callback invoked when a new node is attached as a descendant of this simulator's root node. | |
| void | attachTapTo_ (const log::TapDescriptor &td, sparta::TreeNode *n) |
| Creates and attaches a tap to a node based on its descriptor. | |
| void | attachReportTo_ (sparta::ReportRepository::DirectoryHandle directoryH, const ReportDescriptor &rd, sparta::TreeNode *n, const std::vector< std::string > &replacements) |
| Creates and attaches a report to a node based on its descriptor. | |
| void | checkAllVirtualParamsRead_ (const ParameterTree &pt) |
| Check that all virtual parameters have been read from a given tree. | |
| void | validateDescriptorCanBeAdded_ (const ReportDescriptor &rd, const bool using_pyshell) const |
| Verify that the given report descriptor can be added to this simulation. | |
| void | setupReports_ (ReportStatsCollector *collector) |
| Sets up all reports in this simulation. This can be called during finalization or deferred until later. | |
| ReportDescVec | expandReportDescriptor_ (const ReportDescriptor &rd) const |
| In the case where a comma-separated list of file formats was used to specify the output file format (i.e. 'csv, csv_cumulative'), this method will expand the report descriptors given to this simulation appropriately. | |
| void | setupProfilers_ () |
| Sets up any heap profiler(s) used in this simulation. | |
| void | setupStreamControllers_ () |
| If report statistics are being streamed out of this simulation, share the run controllers's stream controller object with each of the statistics stream root nodes. To illustrate: | |
Virtual Setup Interface | |
| virtual void | buildTree_ ()=0 |
| Allows implementer to create new nodes in the tree. | |
| virtual void | configureTree_ ()=0 |
| Allows implementer to manually configure the tree if required. | |
| virtual void | bindTree_ ()=0 |
| Allows implementer to bind ports to gether. | |
| virtual void | parameterizeApps_ (simdb::AppManager *app_mgr) |
| When using SimDB apps, this method gets called when the SimulationConfiguration (SimDbConfig) has been consumed, and the appropriate apps have been enabled but not yet instantiated. | |
| virtual void | postFinalizeFramework_ () |
| Hook which is called at the end of finalizeFramework() | |
Protected Attributes | |
| std::shared_ptr< SimulationController > | controller_ |
| Custom controller to handle various simulation events. | |
| std::vector< std::shared_ptr< trigger::ExpressionTrigger > > | controller_triggers_ |
| Expression triggers to invoke custom simulation events via the SimulationController object. | |
| sparta::ClockManager | clk_manager_ |
| Clock manager for all clocks in simulation. | |
| std::shared_ptr< sparta::MemoryProfiler > | memory_profiler_ |
| Heap profiler(s), if any. | |
| std::unique_ptr< sparta::ReportRepository > | report_repository_ |
| Repository of all reports for this simulation. | |
| Backtrace | backtrace_ |
| Backtracing utility for error signals. | |
| const std::string | sim_name_ |
| Simulation name. | |
| std::vector< std::unique_ptr< sparta::log::Tap > > | taps_to_del_ |
| User-specified Taps to delete at teardown. These should outlast the entire tree so that they can intercept destruction log messages. | |
| sparta::ResourceSet | res_list_ |
| Map of of resources available to this simulation. This must outlast destruction of the tree root_ and its children. | |
| Scheduler *const | scheduler_ |
| Scheduler this simulation will use. | |
| std::unique_ptr< Report > | auto_summary_report_ |
| Default automaticly generated report containing the entire simulation. | |
| std::unique_ptr< sparta::RootTreeNode > | clk_root_node_ |
| Root node containing the clock tree (called "clocks") | |
| Clock::Handle | root_clk_ |
| Root of clock tree (direct child of clk_root_node_). Represents hypercycles. Destruct after all nodes. | |
| sparta::RootTreeNode | root_ |
| Root of device tree: "top". Destruct after all non-root nodes (see to_delete_) | |
| std::unique_ptr< MetaTreeNode > | meta_ |
| Meta-tree containing simulation meta-information in parameters in "meta.params.fizbin". Destruct after all non-root nodes (see to_delete_) | |
| bool | framework_finalized_ = false |
| Has the framework been finalized. | |
| std::vector< std::unique_ptr< sparta::TreeNode > > | to_delete_ |
| Vector of TreeNodes to delete automatically at destruction. Add any nodes allocated to this list to automatically manage them. | |
| SimulationConfiguration * | sim_config_ {nullptr} |
| const FeatureConfiguration * | feature_config_ {nullptr} |
| sparta::log::Tap | warn_to_cerr_ |
| Tap which warns to cerr. | |
| std::unique_ptr< sparta::log::Tap > | warn_to_file_ |
| Tap which, if constructed, will write all warnings to a file. | |
| uint64_t | num_fired_ |
| Total number of scheduler events firerd. | |
| bool | print_dag_ = false |
| Should the DAG be printed after it is built. | |
| bool | validate_post_run_ = false |
| Validate after running. | |
| std::string | pipeline_collection_prefix_ |
| Pipeline collection prefix. | |
| ReportDescriptorCollection | rep_descs_ |
| Vector of Report descriptors applicable to the simulation. These descriptors are used as the tree is built to find nodes on which to instantiate them. These are still used following building of the device tree in order to determine where the completed reports should be saved. This must be destroyed or no longer accessed once the reports_ vector is destroyed. | |
| std::unique_ptr< ReportConfiguration > | report_config_ |
| Report configuration object which wraps the simulation's ReportDescriptorCollection. | |
| std::vector< ConfigApplicator * > | user_configs_ |
| User configuration vector stored at "preprocessParameters". | |
| bool | using_final_config_ = false |
| tells the simulator that we are using the final config option and need to prevent parameter set callbacks and the simulator itself cannot change parameters. | |
| uint64_t | pevent_warmup_icount_ = 0 |
| Warmup period in instructions before logging pevents. | |
| SpartaHandler | pevent_start_handler_ |
| Callback for pevent startup. | |
| std::unique_ptr< trigger::CounterTrigger > | pevent_start_trigger_ |
| An instruction trigger for observing pevent warmup. | |
| std::unique_ptr< LoggingTrigger > | log_trigger_ |
| Trigger for starting logging. | |
| std::unique_ptr< trigger::Trigger > | debug_trigger_ |
| A trigger used to turn on debug useful options at a given cycle, right now this only turns on pipeline collection. | |
| bool | simulation_successful_ = true |
| Was simulation successful? I.e. no exceptions were thrown. | |
Simulator which builds a sparta DeviceTree.
Definition at line 68 of file Simulation.hpp.
Types of semantics attached to certain counters. It is the responsibility of subclasses to implement findSemanticCounter such taht it can satisfy requests for counters having these semantics.
| Enumerator | |
|---|---|
| CSEM_INSTRUCTIONS | Instruction count semantic (usually core0) |
Definition at line 78 of file Simulation.hpp.
| sparta::app::Simulation::Simulation | ( | const std::string & | sim_name, |
| Scheduler * | scheduler ) |
Deferred configuration constructor. Subsequent call to configure must be made before building/configuring/finalizing.
| sim_name | Name of the simulator |
| scheduler | Pointer to the Scheduler that this Simulation operates with |
| void sparta::app::Simulation::addReport | ( | const ReportDescriptor & | rep | ) |
Add a report.
| rep | Descriptor of report to add |
|
virtual |
Asynchronously stop the run.
|
protected |
Creates and attaches a report to a node based on its descriptor.
| directoryH | Repository directory where the new report goes |
| def_file | Report definition file (.yaml) |
| n | Node to which report should be attached |
| replacements | Set of replacements to give to the report definition parser as substitutions in the report name or report's local stat names |
|
protected |
Creates and attaches a tap to a node based on its descriptor.
| td | Descriptor of tap to create and attach |
| n | Node to which tap should be attached |
|
protectedpure virtual |
Allows implementer to bind ports to gether.
| void sparta::app::Simulation::buildTree | ( | ) |
Builds hard-coded device tree.
Root will be in the TreeNode::TREE_BUILDING phase
|
protected |
Check that all virtual parameters have been read from a given tree.
| [out] | pt | ParameterTree to inspect |
| SpartaException | if any parameters are unread. Exception will explain which parameter is a problem and where it came from (e.g. which file) |
| void sparta::app::Simulation::configure | ( | const int | argc, |
| char ** | argv, | ||
| SimulationConfiguration * | configuration, | ||
| const bool | use_pyshell = false ) |
Configures the simulator after construction. Necessary only when using the simple constructor.
| argc | command line argc (used by the python shell) |
| argv | command line argv (used by the python shell) |
| configuration | The SimulationConfiguration object to initialize this Simulation object |
| use_pyshell | Enable the python shell (experimental) |
| void sparta::app::Simulation::configureTree | ( | ) |
Configure the tree with some node-local config files, params, and node-specific parameters.
Root will be in the TreeNode::TREE_CONFIGURING phase
|
protectedpure virtual |
Allows implementer to manually configure the tree if required.
|
protectednoexcept |
Dump debug content to a timestamped file regardless of debug-dumping control flags.
| filename | Filename of output or "" if output was written to cerr. Updated by this method even if the are errors |
| exception | Exception to write at top of tile |
| backtrace | String describing backtrace at the time the exception was thrown |
|
noexcept |
Determine if debug content needs to be dumped and dump if so. Uses dumpDebugContent to dump.
| [in] | eptr | Exception pointer to inspect |
| [in] | force | Force the dump regardless of configuration |
| void sparta::app::Simulation::dumpMetaParameterTable | ( | std::ostream & | out | ) | const |
Write meta-data tree parameters to given ostream.
| [in] | out | osteam to which meta parameter values will be written |
|
protected |
Print and count the number of Parameters which have had their values changed to something different than the default.
|
inline |
Enable post-run validation explicity.
Definition at line 348 of file Simulation.hpp.
| void sparta::app::Simulation::finalizeFramework | ( | ) |
Finalize framework before running.
| void sparta::app::Simulation::finalizeTree | ( | ) |
Finalizes the device tree.
|
inline |
Get a counter by its semantic (if such a counter exists).
| sem | Semantic of counter to return |
Definition at line 322 of file Simulation.hpp.

|
inlineprotectedvirtual |
Implements findSemanticCounter.
| sem | Semantic of counter to return |
Definition at line 631 of file Simulation.hpp.
|
inline |
Get access to the SimDB AppManagers and their associated DatabaseManagers.
Definition at line 167 of file Simulation.hpp.
|
inlinenoexcept |
Returns the clock manager.
Definition at line 185 of file Simulation.hpp.
|
inline |
Returns this simulator's feature configuration.
Definition at line 207 of file Simulation.hpp.
|
inlinenoexcept |
Returns the Meta TreeNode root.
Definition at line 155 of file Simulation.hpp.
|
inline |
Gets the pipeline collection path.
Definition at line 354 of file Simulation.hpp.
|
inline |
Get this simulator's report configuration.
Definition at line 214 of file Simulation.hpp.
|
inlinenoexcept |
Returns the resource set for this Simulation.
Definition at line 188 of file Simulation.hpp.
|
inlinenoexcept |
Returns the tree root (const)
Definition at line 158 of file Simulation.hpp.
|
inlinenoexcept |
Returns the tree root.
Definition at line 152 of file Simulation.hpp.
|
inlinenoexcept |
Returns the root clock (const)
Definition at line 182 of file Simulation.hpp.
|
inlinenoexcept |
Returns the root clock.
Definition at line 179 of file Simulation.hpp.
|
inlinevirtual |
Get the run control interface for this simulation. This must exist for the lifetime of this simulation.
This is overridable so that simulators can instantiate and return their own run control implementation.
Definition at line 380 of file Simulation.hpp.
|
inline |
Returns the simulation's scheduler.
Definition at line 161 of file Simulation.hpp.
|
inline |
Returns the simulation's scheduler.
Definition at line 164 of file Simulation.hpp.
|
inlinenoexcept |
Returns this simulator's name.
Definition at line 193 of file Simulation.hpp.
|
inline |
Returns this simulator's configuration.
Definition at line 200 of file Simulation.hpp.
| void sparta::app::Simulation::installTaps | ( | const log::TapDescVec & | taps | ) |
Add new taps the the simulation immediately IF possible.
This method exists mainly to allow delayed starting of logging
|
inline |
return the number of events fired on the scheduler during simulation.
Definition at line 343 of file Simulation.hpp.
|
inlineprotectedvirtual |
When using SimDB apps, this method gets called when the SimulationConfiguration (SimDbConfig) has been consumed, and the appropriate apps have been enabled but not yet instantiated.
Definition at line 590 of file Simulation.hpp.
|
inlineprotectedvirtual |
Hook which is called at the end of finalizeFramework()
Definition at line 595 of file Simulation.hpp.
|
inline |
Is the framework ready to run.
Definition at line 176 of file Simulation.hpp.
|
protected |
Re-read all parameter values from the virtual tree.
|
protected |
Re-read volatile parameter values from the virtual tree and write them to the parmeters. This is used by simulators if special parmeter application ordering is required.
| [in] | root | Node at which a search for ParameterSets is started. Each ParameterSet found as an ancestor of this node will have its volatile params updated |
|
virtual |
Run for specified "time" or less.
| run_time | scheduler run_time argument |
|
protectedvirtual |
Enter run-control loop causing the simulator to run or give control to an interactive shell.
|
virtual |
Runs the simulation for a limited run time, returning when done.
This can be called multiple times for a simulator's lifetime and indicates a run of the simulator which can be interrupted by components within the simulator.
This should include no simulator-level setup code since it may be called multiple (unknown number of) times (never recursively) throughout the lifetime of the simulation.
By default, this is done through the SPARTA Scheduler. This method has no exception handling or setup. It should be overridden if the scheduler is not being used to run the simulation (e.g. simulation is functional-only and purely trace-driven).
|
protectedvirtual |
Run for specified "time".
| run_time | scheduler run_time argument |
|
inline |
Set a collection of feature name-value pairs.
| feature_config | Pointer to a feature configuration class |
Typically given to us by the CommandLineSimulator who populates the feature values using a command-line "feature" option.
Definition at line 114 of file Simulation.hpp.
|
protected |
If report statistics are being streamed out of this simulation, share the run controllers's stream controller object with each of the statistics stream root nodes. To illustrate:
|
inline |
Was simulation successful?
Definition at line 337 of file Simulation.hpp.
|
inline |
Returns whether or not the simulator was configured using a final configuration option, likely via the –read-final-config cml option.
Definition at line 173 of file Simulation.hpp.
|
inline |
Was this simulation configured with a Python shell?
Definition at line 365 of file Simulation.hpp.
|
protected |
Default automaticly generated report containing the entire simulation.
Definition at line 782 of file Simulation.hpp.
|
protected |
Backtracing utility for error signals.
Definition at line 754 of file Simulation.hpp.
|
protected |
Clock manager for all clocks in simulation.
This can be created first and destroyed last in case there are resources/reports that still need use of the clocks
Definition at line 739 of file Simulation.hpp.
|
protected |
Root node containing the clock tree (called "clocks")
Definition at line 787 of file Simulation.hpp.
|
protected |
Custom controller to handle various simulation events.
Definition at line 508 of file Simulation.hpp.
|
protected |
Expression triggers to invoke custom simulation events via the SimulationController object.
Definition at line 514 of file Simulation.hpp.
|
protected |
A trigger used to turn on debug useful options at a given cycle, right now this only turns on pipeline collection.
Definition at line 906 of file Simulation.hpp.
|
protected |
Definition at line 826 of file Simulation.hpp.
|
protected |
Has the framework been finalized.
Definition at line 813 of file Simulation.hpp.
|
protected |
Trigger for starting logging.
Definition at line 899 of file Simulation.hpp.
|
protected |
Heap profiler(s), if any.
Definition at line 744 of file Simulation.hpp.
|
protected |
Meta-tree containing simulation meta-information in parameters in "meta.params.fizbin". Destruct after all non-root nodes (see to_delete_)
Definition at line 808 of file Simulation.hpp.
|
protected |
Total number of scheduler events firerd.
Definition at line 838 of file Simulation.hpp.
|
protected |
Callback for pevent startup.
Definition at line 889 of file Simulation.hpp.
|
protected |
An instruction trigger for observing pevent warmup.
Definition at line 894 of file Simulation.hpp.
|
protected |
Warmup period in instructions before logging pevents.
Definition at line 884 of file Simulation.hpp.
|
protected |
Pipeline collection prefix.
Definition at line 850 of file Simulation.hpp.
|
protected |
Should the DAG be printed after it is built.
Definition at line 840 of file Simulation.hpp.
|
protected |
Vector of Report descriptors applicable to the simulation. These descriptors are used as the tree is built to find nodes on which to instantiate them. These are still used following building of the device tree in order to determine where the completed reports should be saved. This must be destroyed or no longer accessed once the reports_ vector is destroyed.
Definition at line 860 of file Simulation.hpp.
|
protected |
Report configuration object which wraps the simulation's ReportDescriptorCollection.
Definition at line 866 of file Simulation.hpp.
|
protected |
Repository of all reports for this simulation.
Definition at line 749 of file Simulation.hpp.
|
protected |
Map of of resources available to this simulation. This must outlast destruction of the tree root_ and its children.
Definition at line 771 of file Simulation.hpp.
|
protected |
Root of device tree: "top". Destruct after all non-root nodes (see to_delete_)
Definition at line 799 of file Simulation.hpp.
|
protected |
Root of clock tree (direct child of clk_root_node_). Represents hypercycles. Destruct after all nodes.
Definition at line 793 of file Simulation.hpp.
|
protected |
Scheduler this simulation will use.
Definition at line 776 of file Simulation.hpp.
|
protected |
Definition at line 823 of file Simulation.hpp.
|
protected |
Simulation name.
Definition at line 759 of file Simulation.hpp.
|
protected |
Was simulation successful? I.e. no exceptions were thrown.
Definition at line 911 of file Simulation.hpp.
|
protected |
User-specified Taps to delete at teardown. These should outlast the entire tree so that they can intercept destruction log messages.
Definition at line 765 of file Simulation.hpp.
|
protected |
Vector of TreeNodes to delete automatically at destruction. Add any nodes allocated to this list to automatically manage them.
Definition at line 819 of file Simulation.hpp.
|
protected |
User configuration vector stored at "preprocessParameters".
Definition at line 872 of file Simulation.hpp.
|
protected |
tells the simulator that we are using the final config option and need to prevent parameter set callbacks and the simulator itself cannot change parameters.
Definition at line 879 of file Simulation.hpp.
|
protected |
Validate after running.
Definition at line 845 of file Simulation.hpp.
|
protected |
Tap which warns to cerr.
Definition at line 831 of file Simulation.hpp.
|
protected |
Tap which, if constructed, will write all warnings to a file.
Definition at line 836 of file Simulation.hpp.