Ignore:
Timestamp:
Jul 20, 2010, 10:44:13 AM (14 years ago)
Author:
Torben Dannhauer
Message:

Network sync:
now works:

  • serialization of transport container
  • transport via ENet UDP
  • de-serialization of the transport container.
  • transport of viewmatrix and framenumber to the slave.

ToDo?: apply viewmatrix on slave still do not work.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • osgVisual/src/cluster/dataIO_clusterENet_implementation.cpp

    r68 r69  
    2121int dataIO_clusterENet_implementation::activeENetInstances = 0;
    2222
    23 dataIO_clusterENet_implementation::dataIO_clusterENet_implementation()
     23dataIO_clusterENet_implementation::dataIO_clusterENet_implementation(std::string& receivedTransportContainer_)
     24: receivedTransportContainer(receivedTransportContainer_)
    2425{
    2526        std::cout << "Instantiated server class# "<< activeENetInstances << std::endl;
     
    142143        if( peerList.size() == 0 )
    143144        {
    144                 std::cout << "dataIO_clusterENet_implementation::sendPacket() - ERROR: No connected peer available!" << std::endl;
     145                //std::cout << "dataIO_clusterENet_implementation::sendPacket() - ERROR: No connected peer available!" << std::endl;
    145146                return;
    146147        }
     
    215216{
    216217        if(currentRole != dataIO_clusterENet_implementation::CLIENT)
     218        {
     219                std::cout << "dataIO_clusterENet_implementation::connectTo() : ERROR: ENet does not work as client - ignoring to connect!" << std::endl;
    217220                return false;
     221        }
    218222
    219223        ENetAddress address;
     
    257261void dataIO_clusterENet_implementation::onReceivePacket(ENetEvent* event_)
    258262{
    259                 std::string datastring;
    260                 datastring.assign((char*)(event_->packet->data), event_->packet->dataLength);   
    261                 std::cout << "A packet of length "<<event_->packet->dataLength<<" containing "<<datastring<<" was received from "<<datastring<<" on channel "<<(int)(event_->channelID)<<std::endl;
    262                 datastring+=std::string("answer");
    263 
    264                 ENetPacket * packet = enet_packet_create (datastring.c_str(),
    265                                                                                                   datastring.size(),
    266                                                                                                   ENET_PACKET_FLAG_RELIABLE);
    267                
    268                 // Send answer
    269                 sendPacket( packet, 0, 0, true);
     263                receivedTransportContainer.assign((char*)(event_->packet->data), event_->packet->dataLength);   
     264                //std::cout << "A packet of length "<<event_->packet->dataLength<<" containing "<<receivedTransportContainer<<" was received from "<<receivedTransportContainer<<" on channel "<<(int)(event_->channelID)<<std::endl;
    270265}
    271266
Note: See TracChangeset for help on using the changeset viewer.