astra-sim-alibabacloud/astra-sim/system/MyPacket.cc (44 lines of code) (raw):

/****************************************************************************** This source code is licensed under the MIT license found in the LICENSE file in the root directory of this source tree. *******************************************************************************/ #include "MyPacket.hh" namespace AstraSim { MyPacket::MyPacket(int preferred_vnet, int preferred_src, int preferred_dest) { this->preferred_vnet = preferred_vnet; this->preferred_src = preferred_src; this->preferred_dest = preferred_dest; this->msg_size = 0; } MyPacket::MyPacket( uint64_t msg_size, int preferred_vnet, int preferred_src, int preferred_dest) { this->preferred_vnet = preferred_vnet; this->preferred_src = preferred_src; this->preferred_dest = preferred_dest; this->msg_size = msg_size; } MyPacket::MyPacket( int preferred_vnet, int preferred_src, int preferred_dest, uint64_t msg_size, int channel_id, int flow_id) { this->preferred_vnet = preferred_vnet; this->preferred_src = preferred_src; this->preferred_dest = preferred_dest; this->msg_size = msg_size; this->channel_id = channel_id; this->flow_id = flow_id; } void MyPacket::set_flow_id(int flow_id) { this->flow_id = flow_id; } void MyPacket::set_notifier(Callable* c) { notifier = c; } void MyPacket::call(EventType event, CallData* data) { cycles_needed = 0; if (notifier != nullptr) notifier->call(EventType::General, nullptr); } } // namespace AstraSim