Program Listing for File async_pipeline.h

Return to documentation for file (src/o3ds/async_pipeline.h)

#ifndef O3DS_ASYNC_PIPELINE
#define O3DS_ASYNC_PIPELINE

#include <nng/nng.h>
#include <nng/protocol/pair1/pair.h>
#include "nng_connector.h"
#include <string>

namespace O3DS
{
    class AsyncPipeline : public AsyncNngConnector
    {
    public:
        static void Callback(void *ref) { ((AsyncPipeline*)ref)->Callback_(); }
        void Callback_();
    };

    class AsyncClient : public AsyncPipeline
    {
    public:
        bool start(const char* url) override;
    };

    class AsyncServer : public AsyncPipeline
    {
    public:
        bool start(const char* url) override;
    };
}

#endif