#include #include "CommChannelProvider.h" CommChannelProvider::CommChannelProvider(Channel *chan, int peer1, int peer2, int dir) : XProvider(chan), m_peer1(peer1), m_peer2(peer2), m_dir(dir) { } CommChannelProvider::~CommChannelProvider() { } int CommChannelProvider::getPeer() { return m_peer2; } void CommChannelProvider::packData(channelData *data, int id) { if(m_dir == UP) data->orient = (id == m_peer1) ? UP : DOWN; if(m_dir == LEFT) data->orient = (id == m_peer1) ? LEFT : RIGHT; data->type = COMM_CHANNEL; data->dest = (id == m_peer1) ? m_peer2 : m_peer1; }