SST  13.0.0
StructuralSimulationToolkit
SST::Interfaces::StandardMem::Request Class Referenceabstract

Base class for StandardMem commands. More...

#include <stdMem.h>

Inheritance diagram for SST::Interfaces::StandardMem::Request:
SST::Interfaces::StandardMem::CustomReq SST::Interfaces::StandardMem::CustomResp SST::Interfaces::StandardMem::FlushAddr SST::Interfaces::StandardMem::FlushResp SST::Interfaces::StandardMem::InvNotify SST::Interfaces::StandardMem::LoadLink SST::Interfaces::StandardMem::MoveData SST::Interfaces::StandardMem::Read SST::Interfaces::StandardMem::ReadLock SST::Interfaces::StandardMem::ReadResp SST::Interfaces::StandardMem::StoreConditional SST::Interfaces::StandardMem::Write SST::Interfaces::StandardMem::WriteResp SST::Interfaces::StandardMem::WriteUnlock

Public Types

enum  Flag { F_NONCACHEABLE = 1 << 1, F_FAIL = 1 << 2, F_TRACE = 1 << 3, F_RESERVED = 1 << 16 }
 Flags that modify requests. More...
 
typedef uint64_t id_t
 
typedef uint32_t flags_t
 

Public Member Functions

 Request (flags_t fl=0)
 
 Request (id_t rid, flags_t flags=0)
 
id_t getID ()
 
virtual RequestmakeResponse ()=0
 
virtual bool needsResponse ()=0
 
virtual SST::Eventconvert (RequestConverter *converter)=0
 
virtual void handle (RequestHandler *handler)=0
 
virtual std::string getString ()=0
 
void setNoncacheable ()
 
void unsetNoncacheable ()
 
bool getNoncacheable ()
 
void setSuccess ()
 
void unsetSuccess ()
 
bool getSuccess ()
 
bool getFail ()
 
void setFail ()
 
void unsetFail ()
 
void setTrace ()
 
void unsetTrace ()
 
bool getTrace ()
 
void setFlag (flags_t flag)
 
void setFlag (Flag flag)
 
void unsetFlag (flags_t flag)
 
void unsetFlag (Flag flag)
 
bool getFlag (flags_t flag)
 
bool getFlag (Flag flag)
 
void clearAllFlags ()
 
flags_t getAllFlags ()
 
std::string getFlagString ()
 

Protected Attributes

id_t id
 
flags_t flags
 

Detailed Description

Base class for StandardMem commands.

Member Enumeration Documentation

◆ Flag

Flags that modify requests.

Each bit in a 32-bit field (flags_t) defines a seperate flag. Values less than F_RESERVED are reserved for futgure expansion. Users may define custom flags above F_RESERVED


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