| SST
    7.1.0
    StructuralSimulationToolkit | 
Represents both memory requests and responses. More...
#include <simpleMem.h>
| Public Types | |
| enum | Command { Read, Write, ReadResp, WriteResp, FlushLine, FlushLineInv, FlushLineResp, TxBegin, TxEnd, TxResp, TxAbort, TxCommit } | 
| Commands and responses possible with a Request object.  More... | |
| enum | Flags { F_NONCACHEABLE = 1<<1, F_LOCKED = 1<<2, F_LLSC = 1<<3, F_LLSC_RESP = 1<<4, F_FLUSH_SUCCESS = 1<<5, F_TRANSACTION = 1<<6 } | 
| Flags to specify conditions on a Request.  More... | |
| typedef uint64_t | id_t | 
| typedef uint32_t | flags_t | 
| typedef std::vector< uint8_t > | dataVec | 
| Type of the payload or data. | |
| Public Member Functions | |
| Request (Command cmd, Addr addr, size_t size, dataVec &data, flags_t flags=0, flags_t memFlags=0) | |
| Constructor. | |
| Request (Command cmd, Addr addr, size_t size, flags_t flags=0, flags_t memFlags=0) | |
| Constructor. | |
| void | addAddress (Addr addr) | 
| void | setPayload (const std::vector< uint8_t > &data_in) | 
| Set the contents of the payload / data field.  More... | |
| void | setPayload (uint8_t *data_in, size_t len) | 
| Set the contents of the payload / data field.  More... | |
| void | setVirtualAddress (const Addr newVA) | 
| Set the virtual address associated with the operation.  More... | |
| uint64_t | getVirtualAddress () | 
| void | setInstructionPointer (const Addr newIP) | 
| Sets the instruction pointer associated with the operation.  More... | |
| Addr | getInstructionPointer () | 
| void | clearFlags (void) | 
| Clears the flags associated with the operation. | |
| void | setFlags (flags_t inValue) | 
| flags_t | getFlags (void) | 
| void | clearMemFlags (void) | 
| Clears the memory flags associated with the operation. | |
| void | setMemFlags (flags_t inValue) | 
| flags_t | getMemFlags (void) | 
| Data Fields | |
| Command | cmd | 
| std::vector< Addr > | addrs | 
| Addr | addr | 
| size_t | size | 
| dataVec | data | 
| flags_t | flags | 
| flags_t | memFlags | 
| id_t | id | 
| Addr | instrPtr | 
| Addr | virtualAddr | 
Represents both memory requests and responses.
| typedef uint32_t SST::Interfaces::SimpleMem::Request::flags_t | 
Flag type
| typedef uint64_t SST::Interfaces::SimpleMem::Request::id_t | 
Request ID type
Commands and responses possible with a Request object.
Flags to specify conditions on a Request.
| 
 | inline | 
References flags.
| 
 | inline | 
References instrPtr.
| 
 | inline | 
References memFlags.
| 
 | inline | 
References virtualAddr.
| 
 | inline | 
| [in] | inValue | Should be one of the flags beginning with F_ in simpleMem | 
| 
 | inline | 
Sets the instruction pointer associated with the operation.
| [in] | newIP | 
| 
 | inline | 
| [in] | inValue | Should be one of the flags beginning with F_ in simpleMem | 
| 
 | inline | 
Set the contents of the payload / data field.
| [in] | data_in | 
| 
 | inline | 
Set the contents of the payload / data field.
| [in] | data_in | 
| 
 | inline | 
Set the virtual address associated with the operation.
| [in] | newVA | 
| Addr SST::Interfaces::SimpleMem::Request::addr | 
Target address - DEPRECATED but included for backward compatibility, defaults to addrs[0]
| std::vector<Addr> SST::Interfaces::SimpleMem::Request::addrs | 
Target address(es)
| Command SST::Interfaces::SimpleMem::Request::cmd | 
Command to issue
| dataVec SST::Interfaces::SimpleMem::Request::data | 
Payload data (for Write, or ReadResp)
Referenced by SST::Interfaces::SimpleMem::Handler< classT, argT >::operator()().
| flags_t SST::Interfaces::SimpleMem::Request::flags | 
Flags associated with this request or response
Referenced by getFlags().
| id_t SST::Interfaces::SimpleMem::Request::id | 
Unique ID to identify responses with requests
| Addr SST::Interfaces::SimpleMem::Request::instrPtr | 
Instruction pointer associated with the operation
Referenced by getInstructionPointer().
| flags_t SST::Interfaces::SimpleMem::Request::memFlags | 
Memory flags - ignored by caches except to be passed through with request to main memory
Referenced by getMemFlags().
| size_t SST::Interfaces::SimpleMem::Request::size | 
Size of this request or response
| Addr SST::Interfaces::SimpleMem::Request::virtualAddr | 
Virtual address associated with the operation
Referenced by getVirtualAddress().