12#ifndef SST_CORE_CORETEST_MODULE_H
13#define SST_CORE_CORETEST_MODULE_H
15#include "sst/core/component.h"
16#include "sst/core/link.h"
17#include "sst/core/module.h"
18#include "sst/core/rng/rng.h"
25using namespace SST::RNG;
27namespace SST::CoreTestModule {
35 SST_ELI_REGISTER_MODULE(
36 CoreTestModuleExample,
"coreTestElement",
"CoreTestModule", SST_ELI_ELEMENT_VERSION(1, 0, 0),
39 SST_ELI_DOCUMENT_PARAMS(
40 {
"rng",
"The random number generator to use (Marsaglia or Mersenne), default is Mersenne",
"Mersenne"},
41 {
"seed_w",
"The seed to use for the random number generator",
"7" },
42 {
"seed_z",
"The seed to use for the random number generator",
"5" },
43 {
"seed",
"The seed to use for the random number generator.",
"11" },
46 SST_ELI_IS_CHECKPOINTABLE()
48 explicit CoreTestModuleExample(
SST::Params& params);
49 ~CoreTestModuleExample();
50 std::string getRNGType()
const;
53 CoreTestModuleExample() {}
67 SST_ELI_REGISTER_COMPONENT(
70 "coreTestModuleLoader",
71 SST_ELI_ELEMENT_VERSION(1,0,0),
72 "Component that loads an RNG module",
73 COMPONENT_CATEGORY_UNCATEGORIZED
76 SST_ELI_DOCUMENT_PARAMS(
77 {
"seed_w",
"The seed to use for the random number generator",
"7" },
78 {
"seed_z",
"The seed to use for the random number generator",
"5" },
79 {
"seed",
"The seed to use for the random number generator.",
"11" },
80 {
"rng",
"The random number generator to use (Marsaglia or Mersenne), default is Mersenne",
"Mersenne"},
81 {
"count",
"The number of random numbers to generate, default is 1000",
"1000" },
82 {
"verbose",
"Sets the output verbosity of the component",
"0" }
86 SST_ELI_DOCUMENT_STATISTICS(
90 SST_ELI_DOCUMENT_PORTS(
94 SST_ELI_DOCUMENT_SUBCOMPONENT_SLOTS(
97 SST_ELI_IS_CHECKPOINTABLE()
101 void setup()
override;
109 virtual bool tick(SST::Cycle_t);
Main component object for the simulation.
Definition component.h:32
Definition coreTest_Module.h:30
Definition coreTest_Module.h:64
void finish() override
Called after complete phase, but before objects are destroyed.
Definition coreTest_Module.cc:127
void setup() override
Called after all components have been constructed and initialization has completed,...
Definition coreTest_Module.cc:123
This class is basically a wrapper for objects to declare the order in which their members should be s...
Definition serializer.h:43
Module is a tag class used with the loadModule function.
Definition module.h:26
Output object provides consistent method for outputting data to stdout, stderr and/or sst debug file.
Definition output.h:58
Parameter store.
Definition params.h:65
Implements the base class for random number generators for the SST core.
Definition rng.h:30