anyKode Marilou
ContentsIndexHome
PreviousUpNext
Connection::Connect (const xkode::lib::String &, int, bool)

Connecting to MODA TCP server.

C++
bool Connect(const xkode::lib::String & ServerIP, int TCPPort, bool PerformSimulationReset);
Parameters 
Description 
const xkode::lib::String & ServerIP 
[in] MODA server IP address or network name. 
int TCPPort 
[in] TCP port of the server. If TCPport is set to 0, Connect used the efault MODA port 13000. 
bool PerformSimulationReset 
[in] Indicates if the simulator must perform a simulation reset. 

true if the connection is established, false otherwise. In this last case, check if the MODA server is started (Exec is running) and that the port of the server is not blocked by a firewall. By default MODA is working on the port 13000 (TCP and UDP).

//////////////////////////////////////////////////////////////////
//Dynamic port and server sample
//////////////////////////////////////////////////////////////////
#include "Modacpp.h"
#include "conio.h"

#define SIMULATEDROBOT "/robot1"
#define MODASERVER "localhost"

int main(int argc, CHAR* argv[])
{
//process the command line
CommandLine::ProcessCommandLine(argc,argv);
//Connect to MODA server
Connection *pConnection=new ModaCPP::Connection(true);
if(pConnection->Connect( CommandLine::GetArgumentValue("/modaserver","127.0.0.1"),CommandLine::GetArgumentValueINT("/modaport",0),false))
    {
    _cprintf("Connection ok\r\n");
    ModaCPP::RobotPHX *robot=connection->QueryRobotPHX(SIMULATEDROBOT);
    if(robot)
        {
        cprintf("robot found\r\n");
        }
    else
        {
        cprintf("robot not found\r\n");
        }
    }
else
    {
    cprintf("Unable to connect to moda server : be sure Exec is running and MODA TCP/UDP ports are open\r\n");
    }
connection->Disconnect();
return 0;
}


//////////////////////////////////////////////////////////////////
//Fixed port and server sample
//////////////////////////////////////////////////////////////////
#include "Modacpp.h"
#include "conio.h"

#define SIMULATEDROBOT "/robot1"
#define MODASERVER "localhost"

int main(int argc, CHAR* argv[])
{
ModaCPP::Connection *connection=new ModaCPP::Connection(true);
if(connection->Connect(MODASERVER))
    {
    _cprintf("Connexion to %s ok\r\n",MODASERVER);
    ModaCPP::RobotPHX *robot=connection->QueryRobotPHX(SIMULATEDROBOT);
    if(robot)
        {
        cprintf("robot found\r\n");
        }
    else
        {
        cprintf("robot not found\r\n");
        }
    }
else
    {
    cprintf("Unable to connect to moda server : be sure Exec is running and MODA TCP/UDP ports are open\r\n");
    }
connection->Disconnect();
return 0;
}
Documentation v4.7 (18/01/2015), Copyright (c) 2015 anyKode. All rights reserved.
What do you think about this topic? Send feedback!