12#ifndef SST_CORE_CORETEST_CLOCKERCOMPONENT_H
13#define SST_CORE_CORETEST_CLOCKERCOMPONENT_H
15#include "sst/core/component.h"
19namespace SST::CoreTestClockerComponent {
25 SST_ELI_REGISTER_COMPONENT(
26 coreTestClockerComponent,
28 "coreTestClockerComponent",
29 SST_ELI_ELEMENT_VERSION(1,0,0),
30 "Clock Benchmark Component",
31 COMPONENT_CATEGORY_UNCATEGORIZED
34 SST_ELI_DOCUMENT_PARAMS(
35 {
"clock",
"Clock frequency",
"1GHz" },
36 {
"clockcount",
"Number of clock ticks to execute",
"100000"}
40 SST_ELI_DOCUMENT_STATISTICS(
44 SST_ELI_DOCUMENT_PORTS(
48 SST_ELI_DOCUMENT_SUBCOMPONENT_SLOTS(
51 coreTestClockerComponent(SST::ComponentId_t
id,
SST::Params& params);
60 virtual bool tick(SST::Cycle_t);
62 virtual bool Clock2Tick(SST::Cycle_t, uint32_t);
63 virtual bool Clock3Tick(SST::Cycle_t, uint32_t);
65 virtual void Oneshot1Callback(uint32_t);
66 virtual void Oneshot2Callback();
75 std::string clock_frequency_str;
SSTHandlerBase< bool, Cycle_t > HandlerBase
Base handler for clock functions.
Definition clock.h:43
Main component object for the simulation.
Definition component.h:31
Definition coreTest_ClockerComponent.h:22
void setup() override
Called after all components have been constructed and initialization has completed,...
Definition coreTest_ClockerComponent.h:52
void finish() override
Called after complete phase, but before objects are destroyed.
Definition coreTest_ClockerComponent.h:53
SSTHandlerBaseNoArgs< void > HandlerBase
Base handler for OneShot callbacks.
Definition oneshot.h:41
Parameter store.
Definition params.h:58
A class to convert between a component's view of time and the core's view of time.
Definition timeConverter.h:28