Ignore:
Timestamp:
02/10/13 08:21:47 (11 years ago)
Author:
István Váradi <ivaradi@…>
Branch:
default
hg-Phase:
(<MercurialRepository 3 'hg:/home/ivaradi/xplane/hg/xplra' '/'>, 'public')
Message:

Added a new command to query the versions

File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/plugin/src/xplra/ServerThread.cc

    r13 r36  
    3131#include "ServerThread.h"
    3232
     33#include "ListenThread.h"
    3334#include "RequestQueue.h"
    3435#include "Protocol.h"
     
    7273//------------------------------------------------------------------------------
    7374
    74 ServerThread::ServerThread(RequestQueue& requestQueue, LocalAcceptor& acceptor) :
     75ServerThread::ServerThread(ListenThread& listenThread,
     76                           RequestQueue& requestQueue, LocalAcceptor& acceptor) :
    7577    Thread(true),
     78    listenThread(listenThread),
    7679    requestQueue(requestQueue),
    7780    bufferedStream(acceptor.getSocket(&waiter)),
     
    147150        } else if (command==Protocol::COMMAND_EXECUTE_SET_MULTI) {
    148151            if (!handleExecuteSetMulti()) break;
     152        } else if (command==Protocol::COMMAND_GET_VERSIONS) {
     153            if (!handleGetVersions()) break;
    149154        } else {
    150155            stream.writeU8(Protocol::RESULT_INVALID_COMMAND);
     
    384389//------------------------------------------------------------------------------
    385390
     391bool ServerThread::handleGetVersions()
     392{
     393    int xplaneVersion = 0;
     394    int xplmVersion = 0;
     395
     396    listenThread.getVersions(xplaneVersion, xplmVersion);
     397
     398    stream.writeU8(Protocol::RESULT_OK);
     399    stream.writeS32(xplaneVersion);
     400    stream.writeS32(xplmVersion);
     401    stream.writeS32(Protocol::version);
     402
     403    return true;
     404}
     405
     406//------------------------------------------------------------------------------
     407
    386408// Local Variables:
    387409// mode: C++
Note: See TracChangeset for help on using the changeset viewer.