SST 15.0
Structural Simulation Toolkit
SST::Profile::EventHandlerProfileToolCount Class Reference

Profile tool that will count the number of times a handler is called. More...

#include <eventHandlerProfileTool.h>

Inheritance diagram for SST::Profile::EventHandlerProfileToolCount:
SST::Profile::EventHandlerProfileTool SST::Profile::ProfileTool SST::Link::AttachPoint

Public Member Functions

uintptr_t registerHandler (const AttachPointMetaData &mdata) override
 
uintptr_t registerLinkAttachTool (const AttachPointMetaData &mdata) override
 Function that will be called when an attach point is registered with the tool implementing the attach point.
 
void beforeHandler (uintptr_t key, const SST::Event *event) override
 
void eventSent (uintptr_t key, Event *&ev) override
 Function that will be called when an event is sent on a link with registered attach points.
 
void outputData (FILE *fp) override
 
- Public Member Functions inherited from SST::Profile::EventHandlerProfileTool
 SST_ELI_DOCUMENT_PARAMS ({ "level", "Level at which to track profile (global, type, component, subcomponent)", "type" }, { "track_ports", "Controls whether to track by individual ports", "false" }, { "profile_sends", "Controls whether sends are profiled (due to location of profiling point in the code, turning on send profiling will incur relatively high overhead)", "false" }, { "profile_receives", "Controls whether receives are profiled", "true" },) enum class Profile_Level
 
 EventHandlerProfileTool (const std::string &name, Params &params)
 
bool profileSends ()
 
bool profileReceives ()
 
void beforeHandler (uintptr_t UNUSED(key), const Event *UNUSED(event)) override
 
void afterHandler (uintptr_t UNUSED(key)) override
 
void eventSent (uintptr_t UNUSED(key), Event *&UNUSED(ev)) override
 
- Public Member Functions inherited from SST::Profile::ProfileTool
std::string getName ()
 

Additional Inherited Members

- Protected Member Functions inherited from SST::Profile::EventHandlerProfileTool
std::string getKeyForHandler (const AttachPointMetaData &mdata)
 
- Protected Attributes inherited from SST::Profile::EventHandlerProfileTool
Profile_Level profile_level_
 
bool track_ports_
 
bool profile_sends_
 
bool profile_receives_
 
- Protected Attributes inherited from SST::Profile::ProfileTool
const std::string name
 

Detailed Description

Profile tool that will count the number of times a handler is called.

Member Function Documentation

◆ eventSent()

void SST::Profile::EventHandlerProfileToolCount::eventSent ( uintptr_t key,
Event *& ev )
overridevirtual

Function that will be called when an event is sent on a link with registered attach points.

If ev is set to nullptr, then the event will not be delivered and the tool should delete the original event.

Parameters
keyOpaque key returned from registerLinkAttachTool()

Implements SST::Link::AttachPoint.

References eventSent().

Referenced by eventSent().

◆ outputData()

void SST::Profile::EventHandlerProfileToolCount::outputData ( FILE * fp)
overridevirtual

◆ registerLinkAttachTool()

uintptr_t SST::Profile::EventHandlerProfileToolCount::registerLinkAttachTool ( const AttachPointMetaData & mdata)
overridevirtual

Function that will be called when an attach point is registered with the tool implementing the attach point.

The metadata passed in will be dependent on what type of tool this is attached to. The uintptr_t returned from this function will be passed into the eventSent() function.

Parameters
mdataMetadata to be passed into the tool
Returns
Opaque key that will be passed back into eventSent() to identify the source of the call

Implements SST::Link::AttachPoint.

References registerLinkAttachTool().

Referenced by registerLinkAttachTool().


The documentation for this class was generated from the following files: