// TcpSocket_p.h (c) 2011 Derek Barnett
// Marth Lab, Department of Biology, Boston College
// ---------------------------------------------------------------------------
-// Last modified: 10 November 2011 (DB)
+// Last modified: 7 December 2011 (DB)
// ---------------------------------------------------------------------------
// Provides basic TCP I/O interface
// ***************************************************************************
namespace BamTools {
namespace Internal {
+class BamHttp;
class TcpSocketEngine;
class TcpSocket {
// enums
public:
- enum SocketError { UnknownSocketError = -1
+ enum SocketError { NoError = -2
+ , UnknownSocketError = -1
, ConnectionRefusedError = 0
, RemoteHostClosedError
, HostNotFoundError
const std::string& port,
IBamIODevice::OpenMode mode);
bool InitializeSocketEngine(HostAddress::NetworkProtocol protocol);
- bool ReadFromSocket(void);
+ int64_t ReadFromSocket(void);
void ResetSocketEngine(void);
// data members
TcpSocket::SocketError m_error;
TcpSocket::SocketState m_state;
std::string m_errorString;
+
+ friend class BamHttp;
};
} // namespace Internal