src/proto2/NetworkSocket.hh
author saiam
Fri, 28 Nov 2008 22:26:23 +0000
changeset 128 890ac82cdcc0
parent 118 561165de7452
permissions -rw-r--r--
Documenting more, cleaning variables. This code needs some serious
rewriting. (And we havent too many features either)
89
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
     1
#ifndef NETWORK_SOCKET_HH
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
     2
#define NETWORK_SOCKET_HH
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
     3
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
     4
#include "Error.hh"
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
     5
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
     6
#include <ClanLib/Network/Socket/socket.h>
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
     7
#include <cerrno>
118
561165de7452 En takaa ett? k??ntyy en?? atk-keskuksella
saiam
parents: 89
diff changeset
     8
#include <cstring>
89
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
     9
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    10
typedef CL_Socket NetworkSocket;
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    11
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    12
// Network.cc
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    13
class NetworkSocketError : public Error {
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    14
    protected:
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    15
        std::string build_str (const NetworkSocket &socket, const char *op, const char *err);
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    16
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    17
        NetworkSocketError (const NetworkSocket &socket, const char *op, const char *err);
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    18
};
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    19
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    20
class NetworkSocketOSError : public NetworkSocketError {
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    21
    public:
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    22
        NetworkSocketOSError (const NetworkSocket &socket, const char *op) :
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    23
            NetworkSocketError(socket, op, strerror(errno)) { }
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    24
};
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    25
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    26
class NetworkSocketEOFError : public NetworkSocketError {
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    27
    public:
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    28
        NetworkSocketEOFError (const NetworkSocket &socket, const char *op) :
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    29
            NetworkSocketError(socket, op, "EOF") { }
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    30
};
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    31
825c4613e087 merge branches/no-netsession@89 into trunk
terom
parents:
diff changeset
    32
#endif /* NETWORK_SOCKET_HH */