1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980 |
- /*
- * ctkNetworkConnectorZeroMQ.h
- * ctkEventBus
- *
- * Created by Daniele Giunchi on 11/04/10.
- * Copyright 2009 B3C. All rights reserved.
- *
- * See Licence at: http://tiny.cc/QXJ4D
- *
- */
- #ifndef ctkNetworkConnectorZeroMQ_H
- #define ctkNetworkConnectorZeroMQ_H
- // include list
- #include "ctkNetworkConnector.h"
- namespace ctkEventBus {
- /**
- Class name: ctkNetworkConnectorZeroMQ
- This class is the implementation class for client/server objects that works over network
- with xml-rpc protocol. The server side part also create a new ID named REGISTER_SERVER_METHODS_XXX
- (where the XXX is the port on which run the server) that allows you to register your own remote
- callbacks. The library used is qxmlrpc.
- */
- class org_commontk_eventbus_EXPORT ctkNetworkConnectorZeroMQ : public ctkNetworkConnector {
- Q_OBJECT
- public:
- /// object constructor.
- ctkNetworkConnectorZeroMQ();
- /// object destructor.
- /*virtual*/ ~ctkNetworkConnectorZeroMQ();
- /// create the unique instance of the client.
- /*virtual*/ void createClient(const QString hostName, const unsigned int port);
- /// create the unique instance of the server.
- /*virtual*/ void createServer(const unsigned int port);
- /// Start the server.
- /*virtual*/ void startListen();
- //retrieve an instance of the object
- /*virtual*/ ctkNetworkConnector *clone();
- /// register all the signals and slots
- /*virtual*/ void initializeForEventBus();
- /// Allow to send a network request.
- /** Contains the conversion between maf datatypes and qxmlrpc datatype based both on QVariant. */
- /*virtual*/ void send(const QString event_id, ctkEventArgumentsList *argList);
- private Q_SLOTS:
- /// callback for the client which retrieve the variable from the server
- virtual void processReturnValue( int requestId, QVariant value );
- //// here goes slots which handle the connection
-
- protected:
- //here goes zeromq vars
-
- private:
- //here ges function for zeromq connection
-
- /// stop and destroy the server instance.
- void stopServer();
-
- };
- } //namespace ctkEventBus
- #endif // ctkNetworkConnectorZeroMQ_H
|