13 #include "networkmod.h" 32 struct PacketSendData;
54 unsigned short serverport,
55 bool multithreaded=
true,
56 int connectiontimeout=-1);
65 bool stillTrying()
const;
66 const char*
server()
const {
return servername_; }
67 unsigned short port()
const {
return serverport_; }
68 int ID()
const {
return id_; }
71 bool waitforfinish=
false);
118 void sendQueueCB(CallBacker*);
121 void socketThreadFunc(CallBacker*);
122 void connectToHost(
bool witheventloop );
123 void connCloseCB(CallBacker*);
124 void newConnectionCB(CallBacker*);
125 void dataArrivedCB(CallBacker*);
130 bool readFromSocket();
131 bool writeToSocket();
136 friend struct PacketSendData;
137 friend class RequestConnectionSender;
163 void newConnectionCB(CallBacker*);
static int cDisconnected()
Definition: netreqconnection.h:86
#define mExpClass(module)
Definition: commondefs.h:157
Is an object that faciliates many threads to wait for something to happen.
Definition: thread.h:108
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:182
A lock of a type that (hopefully) suits your needs. To use it, you need the Locker class...
Definition: threadlock.h:51
Definition: jobcommunic.h:22
Threads::Thread * socketthread_
Definition: netreqconnection.h:113
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
CNotifier< RequestConnection, od_int32 > packetArrived
Definition: netreqconnection.h:91
Socket * socket()
Definition: netreqconnection.h:89
int timeout_
Definition: netreqconnection.h:105
const char * server() const
Definition: netreqconnection.h:66
int id_
Definition: netreqconnection.h:108
unsigned short serverport_
Definition: netreqconnection.h:111
int ID() const
Definition: netreqconnection.h:68
Server * server_
Definition: netreqconnection.h:171
Socket * socket_
Definition: netreqconnection.h:104
unsigned short serverport_
Definition: netreqconnection.h:170
uiString errMsg() const
Becomes yours.
Definition: netreqconnection.h:159
Definition: uistring.h:88
Definition: netreqpacket.h:38
uiString errmsg_
Definition: netreqconnection.h:98
Definition: netreqconnection.h:50
Class to help setup a callback handling.
Definition: notify.h:121
Set of pointers to objects.
Definition: commontypes.h:28
Is the base class for all threads. Start it by creating it and give it the function or CallBack to ex...
Definition: thread.h:290
Definition: netreqconnection.h:146
bool isMultiThreaded()
Definition: netreqconnection.h:88
Threads::ConditionVar * eventlooplock_
Definition: netreqconnection.h:115
Threads::Lock lock_
Definition: netreqconnection.h:169
unsigned short port() const
Definition: netreqconnection.h:67
TypeSet< od_int32 > ourrequestids_
Definition: netreqconnection.h:100
Threads::ConditionVar lock_
Definition: netreqconnection.h:103
ObjectSet< PacketSendData > sendqueue_
Definition: netreqconnection.h:117
#define od_int32
Definition: plftypes.h:29
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
Notifier< RequestConnection > connectionClosed
Definition: netreqconnection.h:92
Server * server()
Definition: netreqconnection.h:153
BufferString errmsg_
Definition: horizontracker.h:117
ObjectSet< RequestPacket > receivedpackets_
Definition: netreqconnection.h:101
QEventLoop * eventloop_
Definition: netreqconnection.h:114
static int cTimeout()
Definition: netreqconnection.h:85
static int cInvalidRequest()
Definition: netreqconnection.h:84
uiString errmsg_
Definition: netreqconnection.h:165
Notifier with automatic capsule creation.
Definition: notify.h:166
Notifier< RequestServer > newConnection
Definition: netreqconnection.h:155
ObjectSet< RequestConnection > pendingconns_
Definition: netreqconnection.h:167
uiString errMsg() const
Definition: netreqconnection.h:94
BufferString servername_
Definition: netreqconnection.h:110
bool ownssocket_
Definition: netreqconnection.h:106