danicoin/src/Platform/OSX/System/TcpConnector.h

37 lines
821 B
C
Raw Normal View History

// Copyright (c) 2011-2015 The Cryptonote developers
// Distributed under the MIT/X11 software license, see the accompanying
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
2014-09-15 10:48:45 +00:00
#pragma once
#include <cstdint>
#include <string>
namespace System {
class Dispatcher;
2014-09-15 10:48:45 +00:00
class TcpConnection;
class TcpConnector {
public:
TcpConnector();
TcpConnector(Dispatcher& dispatcher, const std::string& address, uint16_t port);
2014-09-15 10:48:45 +00:00
TcpConnector(const TcpConnector&) = delete;
TcpConnector(TcpConnector&& other);
~TcpConnector();
TcpConnector& operator=(const TcpConnector&) = delete;
TcpConnector& operator=(TcpConnector&& other);
void start();
void stop();
2014-09-15 10:48:45 +00:00
TcpConnection connect();
private:
Dispatcher* dispatcher;
std::string address;
uint16_t port;
bool stopped;
void* context;
2014-09-15 10:48:45 +00:00
};
}