9 #if SSTMAC_INTEGRATED_SST_CORE 11 #include <sst/core/interfaces/simpleNetwork.h> 35 void packetArrived(
int vn,
packet* pkt);
37 void sendWhatYouCan(
int vn);
47 #if SSTMAC_INTEGRATED_SST_CORE 50 init_sst_params(SST::Params& params, SST::Component* parent){}
54 init_factory_params(sprockit::sim_parameters *params);
57 virtual void inject(
int vn,
long bytes,
long byte_offset,
message* payload) = 0;
59 virtual bool spaceToSend(
int vn,
int num_bits)
const = 0;
70 std::map<int, std::list<pending_send> >
pending_;
79 void bytesArrived(
int vn, uint64_t unique_id,
int bytes,
message* parent);
85 #if SSTMAC_INTEGRATED_SST_CORE 86 class SimpleNetworkPacket :
public SST::Event
91 SimpleNetworkPacket(uint64_t
id) : unique_id(
id) {}
95 class SimpleNetworkPacketizer :
99 bool spaceToSend(
int vn,
int num_bits)
const;
101 void inject(
int vn,
long bytes,
long byte_offset,
message *
payload);
103 virtual void init_sst_params(SST::Params ¶ms, SST::Component *parent);
105 bool recvNotify(
int vn);
107 bool sendNotify(
int vn);
110 SST::Interfaces::SimpleNetwork* m_linkControl;
111 SST::Interfaces::SimpleNetwork::HandlerBase* m_recvNotifyFunctor;
112 SST::Interfaces::SimpleNetwork::HandlerBase* m_sendNotifyFunctor;
120 #endif // PACKETIZER_H A class describing an event.
void setNotify(packetizer_callback *handler)
virtual void notify(int vn, message *msg)=0
#define NotSerializable(obj)
std::map< int, std::list< pending_send > > pending_
recv_cq completion_queue_
SUMI = Simulator unified messagine interface It is also the name for a solid ink in Japanese - i...
virtual ~packetizer_callback()
packetizer_callback * notifier_