src/Network/Target.cc
author Tero Marttila <terom@fixme.fi>
Mon, 26 Jan 2009 23:03:47 +0200
changeset 431 c6d7272a164b
child 432 82b0f4e55a13
permissions -rw-r--r--
rework Network send() code to use NetworkTarget/Node/Group::send classes, add a NetworkMessage class for sending NetworkObject messages, and fix a bug whereby the server's client TCP sockets weren't nonblocking.... I wonder how this has worked before?\!

#include "Target.hh"

#include <cassert>

void NetworkTarget::send_raw (const NetworkPacketBuffer &pkt, bool reliable) {
    // currently this is the same as send_pkt
    send_pkt(pkt, reliable);
}

void NetworkTarget::send (NetworkChannelID channel_id, const NetworkPacketBuffer &pkt, bool reliable) {
    assert(channel_id > 0);
    
    // add our header
    NetworkPacket pkt2;
    
    // XXX: not using NetworkSession::write_packet_header
    pkt2.write_uint16(channel_id);
    pkt2.write_packet(pkt);
    
    // send
    send_pkt(pkt2, reliable);
}