13 #include "networkmod.h" 24 #define mReturn( ret ) { \ 25 if ( ret ) { nrattempts_ = 0; return true; } \ 26 if ( nrattempts_++ < maxtries_ ) return true; \ 28 directMsg("Lost connection with master[1]. Exiting."); \ 29 ExitProgram( -1 ); return false; \ 32 #define mTryMaxtries( fn ) { \ 33 for ( int i=0; i<maxtries_; i++ ) \ 36 if ( ret ) return true; \ 40 directMsg("Lost connection with master[2]. Exiting."); \ 41 ExitProgram( -1 ); return false; \ 53 JobError, HostError, Killed, Timeout };
59 bool ok() {
return stillok_; }
67 bool ret = sendState_(stat_,
false,
false);
71 {
bool ret = sendProgress_(p,
false);
mReturn(ret) }
73 void setTimeBetweenMsgUpdates(
int);
91 { progressdetail_ = str; }
107 bool sendState_(
State,
bool isexit,
bool immediate );
108 bool sendProgress_(
int,
bool immediate );
109 bool sendPID_(
int );
110 bool sendErrMsg_(
const char* msg );
112 void alarmHndl( CallBacker* );
115 bool updateMsg(
char tag,
int,
const char* msg=0 );
116 bool sendMsg(
char tag,
int,
const char* msg=0 );
119 void directMsg(
const char* msg );
121 void setErrMsg(
const char*);
123 void checkMasterTimeout();
135 void logMsg(
bool stat,
const char* msg,
const char* details);
138 void dumpSystemInfo();
#define mExpClass(module)
Definition: commondefs.h:157
#define mReturn(ret)
Definition: jobcommunic.h:24
Inherit from this class to be able to send and/or receive CallBacks.
Definition: callback.h:182
int socktimeout_
Definition: jobcommunic.h:128
bool sendState(bool isexit=false)
Definition: jobcommunic.h:75
OD class for stream write common access to the user log file, or std::cout in batch progs...
Definition: od_ostream.h:25
bool stillok_
Definition: jobcommunic.h:97
FixedString Undef()
Definition: keystrs.h:139
Definition: jobcommunic.h:22
#define mODTextTranslationClass(clss)
Definition: uistring.h:37
State stat_
Definition: jobcommunic.h:98
int failtimeout_
Definition: jobcommunic.h:129
void setState(State s)
Definition: jobcommunic.h:63
bool sendPID(int pid)
Definition: jobcommunic.h:83
int timestamp_
Definition: jobcommunic.h:125
Definition: uistring.h:88
BufferString progressdetail_
Definition: jobcommunic.h:103
int nrattempts_
Definition: jobcommunic.h:126
od_ostream * logstream_
Definition: jobcommunic.h:136
int min_time_between_update_
Definition: jobcommunic.h:130
int maxtries_
Definition: jobcommunic.h:127
void setProgressDetail(const char *str)
Definition: jobcommunic.h:90
bool updateProgress(int p)
Definition: jobcommunic.h:70
int lastsucces_
Definition: jobcommunic.h:131
uiString errmsg_
Definition: jobcommunic.h:99
Holds data to use and close an iostream.
Definition: strmdata.h:29
#define mTryMaxtries(fn)
Definition: jobcommunic.h:32
int lastupdate_
Definition: jobcommunic.h:133
int min_time_between_msgupdates_
Definition: jobcommunic.h:132
Main object for 'standard' batch programs.
Definition: batchprog.h:48
bool ok()
Definition: jobcommunic.h:59
State
Definition: jobcommunic.h:52
OD::String with its own variable length buffer. The buffer has a guaranteed minimum size...
Definition: bufstring.h:38
BufferString errmsg_
Definition: horizontracker.h:117
int masterport_
Definition: jobcommunic.h:96
bool updateState()
Definition: jobcommunic.h:65
BufferString masterhost_
Definition: jobcommunic.h:95
int jobid_
Definition: jobcommunic.h:100
uiString errMsg()
Definition: jobcommunic.h:60
State state() const
Definition: jobcommunic.h:62
bool sendProgress(int p)
Definition: jobcommunic.h:77
Multi-machine socket communicator Handles the communication between a client and the master...
Definition: jobcommunic.h:49
bool sendErrMsg(const char *msg)
hostrelated error messages are more serious.
Definition: jobcommunic.h:81
Definition: jobcommunic.h:52
Network::Socket * socket_
Definition: jobcommunic.h:105
bool pausereq_
Definition: jobcommunic.h:101
StreamData & sdout_
Definition: jobcommunic.h:102
bool pauseRequested() const
Definition: jobcommunic.h:86