// Copyright (c) 2004 David Muse // See the COPYING file for more information. #ifndef RUDIMENTS_MODEMCLIENT_H #define RUDIMENTS_MODEMCLIENT_H #include <rudiments/private/modemclientincludes.h> // The modemclient implements methods for connecting to and communicating with // a remote host using a modem. #ifdef RUDIMENTS_NAMESPACE namespace rudiments { #endif class modemclientprivate; class modemclient : public client, private modemutil { public: modemclient(); modemclient(const modemclient &m); modemclient &operator=(const modemclient &m); virtual ~modemclient(); void initialize(constnamevaluepairs *cd); // Initializes the class to use "device", // "baud, "connectscript", "phonenumber", // "disconnectscript", "retrywait" and // "retrycount" when connect() is called. void initialize(const char *device, const char *baud, const char *connectscript, const char *phonenumber, const char *disconnectscript, unsigned long retrywait, unsigned long retrycount); // Initializes the class to use "device", // "baud, "connectscript", "phonenumber", // "disconnectscript", "retrywait" and // "retrycount" when connect() is called. int connect(); // Dial the modem and attempt to establish a connection. // If the connection fails, it will retry "retrycount" // times, waiting "retrywait" seconds between // retrycount. // // Setting "retrycount" to 0 will cause it to try to // connect indefinitely. Setting "retrywait" to 0 // will cause it to try to connect over and over // as fast as possible (not recommended). // // Each attempt to connect will wait "timeoutsec" // seconds and "timeoutusec" microseconds for the // connect to succeed. Specifying -1 for either // parameter will cause the attempt to wait until the // underlying protocol times out which may be up to 2 // minutes. // // Returns RESULT_SUCCESS on success and RESULT_ERROR // on failure. bool close(); // Hangs up the modem and closes the device. // // Returns true on success and false on failure. #include <rudiments/private/modemclient.h> }; #ifdef RUDIMENTS_NAMESPACE } #endif #endif