31   const int    MINIMUM_NUMBER_OF_MESSAGES  =  100;
 
   32   const double MINIMUM_ELAPSED_TIME_S      =  60*60;
 
   42     static const int MAXIMUM_FILE_NUMBER  = 100;
 
   74       for (
int i = 0; !this->is_open() && i != MAXIMUM_FILE_NUMBER; ++i) {
 
   80            << 
"_"  << this->getYear() << 
'-' << 
FILL(2,
'0') << this->getMonth() << 
'-' << 
FILL(2,
'0') << this->getDay();
 
  126 int main(
int argc, 
const char *argv[])
 
  142     JParser<> zap(
"Auxiliary program to save logger messages from ControlHost server.");
 
  144     zap[
'H'] = 
make_field(hostname)        = 
"localhost";
 
  153   catch(
const exception &error) {
 
  154     FATAL(error.what() << endl);
 
  157   if (happy_hour.empty()) {
 
  159     WARNING(
"No happy hours (option -W); set to midnight." << endl);
 
  161     happy_hour.insert(0);
 
  183     JLoggerFile out(
path);
 
  187     DEBUG(
"Open file  " << out.getFilename() << endl);
 
  194     for (
int number_of_messages; buffer.size() != 
stop.size() || 
string(buffer.data(), 
stop.size()) != 
stop; ) {
 
  196       const int check = in.
CheckHead(prefix, timeout);
 
  198       DEBUG(
"Check head " << check << endl);
 
  202         FATAL(
"Error at JControlHost::CheckHead " << check << endl);
 
  204       } 
else if (check == 1) {
 
  208         DEBUG(
"Message <" << buffer << 
">" << endl);
 
  210         if        (buffer == 
stop) {
 
  214         } 
else if (buffer == save) {
 
  216           DEBUG(
"Close file " << out.getFilename() << endl);
 
  221           DEBUG(
"Open file  " << out.getFilename() << endl);
 
  225           ++number_of_messages;
 
  227           if ( ! (out << buffer << endl)) {
 
  228             FATAL(
"Error writing to file " << out.getFilename() << endl);
 
  233       if (check == 0 || number_of_messages > MINIMUM_NUMBER_OF_MESSAGES) {
 
  235         number_of_messages = 0;
 
  243           DEBUG(
"Close file " << out.getFilename() << endl);
 
  248           DEBUG(
"Open file " << out.getFilename() << endl);
 
  256     ERROR(error << endl);
 
Utility class to parse command line options. 
 
int main(int argc, char *argv[])
 
void set(const bool utc=false)
Set to current local time. 
 
static const std::string MESSAGE_TAG
Message logging tag. 
 
int Subscribe(const JSubscription &subscription)
Subscribe to single tag. 
 
int SendMeAlways()
Tell server to send messages forever. 
 
Empty structure for specification of parser element that is initialised (i.e. does not require input)...
 
std::string getFullPath(const std::string &path)
Get full path, i.e. add JEEP::PATHNAME_SEPARATOR if necessary. 
 
T * open(const std::string &file_name)
Open file. 
 
then usage $script[port]< option > nPossible stop
 
Auxiliary class for time values. 
 
int CheckHead(JPrefix &prefix, JTimeval timeout=JTimeval::min())
Check for header, without waiting. 
 
void open(const char *name, int open_mode=std::ios::out)
 
int GetFullString(std::string &buffer)
Receive string. 
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object 
 
void close(std::istream *pf)
Close file. 
 
JSubscriptionList & add(const JSubscription &subscription)
Add subscription. 
 
Exception for ControlHost. 
 
$WORKDIR driver txt done cat $WORKDIR driver txt<< EOFprocess ${DATAFILTER}$FILTER_HOST csh-c '(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&(JDataFilter-H\$SERVER\$-M\$LOGGER\$-d $DEBUG-u ${DATAFILTER}-P $PORT</dev/null > &/dev/null &))';process ${DATAWRITER}$WRITER_HOST csh-c '(setenv ROOTSYS $ROOTSYS &&source $JPP_DIR/setenv.csh $JPP_DIR &&(JDataWriter-H\$SERVER\$-M\$LOGGER\$-d $DEBUG-u ${DATAWRITER}</dev/null > &/dev/null &))';print enterevent ev_init{RC_CMD}event ev_reset{RC_CMD}event ev_init{RC_CMD}event ev_configure{RC_DFLTR%<$WORKDIR/ev_configure_datafilter.txt > RC_DQSIM<$WORKDIR/ev_configure_dqsimulator.txt > RC_DWRT path
 
Auxiliary class for all subscription. 
 
General purpose messaging. 
 
Auxiliary data structure for sequence of same character. 
 
double getElapsedTime(const JDateAndTime &object) const 
Get elapsed time to given date and time. 
 
static JStat getFileStatus
Function object for file status. 
 
General purpose message reporting. 
 
Auxiliary class for date and time. 
 
Utility class to parse command line options. 
 
int getHour() const 
hours after midnight [0-23] 
 
std::string getFilename(const std::string &file_name)
Get file name part, i.e. part after last JEEP::PATHNAME_SEPARATOR if any. 
 
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
 
static void Throw(const bool option)
Enable/disable throw option. 
 
#define DEBUG(A)
Message macros.