|
|
| PMonitoredSocketChannel (const PMonitoredSocketsPtr &sockets, bool shared) |
| Construct a monitored socket bundle channel. More...
|
|
|
virtual PBoolean | IsOpen () const |
| Determine if the channel is currently open. More...
|
|
virtual PBoolean | Close () |
| Close the channel, shutting down the link to the data source. More...
|
|
virtual PBoolean | Read (void *buffer, PINDEX length) |
| Override of PChannel functions to allow connectionless reads. More...
|
|
virtual PBoolean | Write (const void *buffer, PINDEX length) |
| Override of PChannel functions to allow connectionless writes. More...
|
|
|
void | SetInterface (const PString &iface) |
| Set the interface descriptor to be used for all reads/writes to this channel. More...
|
|
PString | GetInterface () |
| Get the current interface descriptor being used/. More...
|
|
bool | GetLocal (PIPSocket::Address &address, WORD &port, bool usingNAT) |
| Get the local IP address and port for the currently selected interface. More...
|
|
bool | GetLocal (PIPSocket::AddressAndPort &ap, bool usingNAT) |
|
void | SetRemote (const PIPSocket::Address &address, WORD port) |
| Set the remote address/port for all Write() functions. More...
|
|
void | SetRemote (const PIPSocket::AddressAndPort &ap) |
|
void | SetRemote (const PString &hostAndPort) |
| Set the remote address/port for all Write() functions. More...
|
|
void | GetRemote (PIPSocket::Address &addr, WORD &port) const |
| Get the current remote address/port for all Write() functions. More...
|
|
void | GetRemote (PIPSocketAddressAndPort &ap) const |
|
void | SetPromiscuous (bool flag) |
| Set flag for receiving UDP data from any remote address. More...
|
|
bool | GetPromiscuous () |
| Get flag for receiving UDP data from any remote address. More...
|
|
void | GetLastReceived (PIPSocket::Address &addr, WORD &port) const |
| Get the IP address and port of the last received UDP data. More...
|
|
void | GetLastReceived (PIPSocketAddressAndPort &ap) const |
|
PString | GetLastReceivedInterface () const |
| Get the interface the last received UDP data was recieved on. More...
|
|
const PMonitoredSocketsPtr & | GetMonitoredSockets () const |
| Get the monitored socket bundle being used by this channel. More...
|
|
PBoolean | SetErrorValues (Errors errorCode, int osError, ErrorGroup group=LastGeneralError) |
| Set error values to those specified. More...
|
|
virtual Comparison | Compare (const PObject &obj) const |
| Get the relative rank of the two strings. More...
|
|
virtual PINDEX | HashFunction () const |
| Calculate a hash value for use in sets and dictionaries. More...
|
|
virtual PString | GetName () const |
| Get the platform and I/O channel type name of the channel. More...
|
|
virtual P_INT_PTR | GetHandle () const |
| Get the integer operating system handle for the channel. More...
|
|
FILE * | FDOpen (const char *mode) |
| Re-open the device using the stdio library. More...
|
|
virtual PChannel * | GetBaseReadChannel () const |
| Get the base channel of channel indirection using PIndirectChannel. More...
|
|
virtual PChannel * | GetBaseWriteChannel () const |
| Get the base channel of channel indirection using PIndirectChannel. More...
|
|
void | SetReadTimeout (const PTimeInterval &time) |
| Set the timeout for read operations. More...
|
|
PTimeInterval | GetReadTimeout () const |
| Get the timeout for read operations. More...
|
|
PINDEX | GetLastReadCount () const |
| Get the number of bytes read by the last Read() call. More...
|
|
virtual int | ReadChar () |
| Read a single character from the channel. More...
|
|
PBoolean | ReadBlock (void *buf, PINDEX len) |
| Read len bytes into the buffer from the channel. More...
|
|
PString | ReadString (PINDEX len) |
| Read len character into a string from the channel. More...
|
|
void | SetWriteTimeout (const PTimeInterval &time) |
| Set the timeout for write operations to complete. More...
|
|
PTimeInterval | GetWriteTimeout () const |
| Get the timeout for write operations to complete. More...
|
|
virtual PBoolean | Write (const void *buf, PINDEX len, const void *) |
| Low level write to the channel with marker. More...
|
|
virtual PINDEX | GetLastWriteCount () const |
| Get the number of bytes written by the last Write() call. More...
|
|
PBoolean | WriteChar (int c) |
| Write a single character to the channel. More...
|
|
PBoolean | WriteString (const PString &str) |
| Write a string to the channel. More...
|
|
| ~PChannel () |
| Close down the channel. More...
|
|
Errors | GetErrorCode (ErrorGroup group=NumErrorGroups) const |
| Get normalised error code. More...
|
|
int | GetErrorNumber (ErrorGroup group=NumErrorGroups) const |
| Get OS errro code. More...
|
|
virtual PString | GetErrorText (ErrorGroup group=NumErrorGroups) const |
| Get error message description. More...
|
|
virtual bool | ReadAsync (AsyncContext &context) |
| Begin an asynchronous read from channel. More...
|
|
virtual void | OnReadComplete (AsyncContext &context) |
| User callback function for when a ReadAsync() call has completed or timed out. More...
|
|
virtual bool | WriteAsync (AsyncContext &context) |
| Begin an asynchronous write from channel. More...
|
|
virtual void | OnWriteComplete (AsyncContext &context) |
| User callback function for when a WriteAsync() call has completed or timed out. More...
|
|
virtual PBoolean | Shutdown (ShutdownValue option) |
| Close one or both of the data streams associated with a channel. More...
|
|
virtual bool | SetLocalEcho (bool localEcho) |
| Set local echo mode. More...
|
|
virtual bool | FlowControl (const void *flowData) |
| Flow Control information Pass data to the channel for flowControl determination. More...
|
|
PBoolean | SetBufferSize (PINDEX newSize) |
| Set the iostream buffer size for reads and writes. More...
|
|
PBoolean | SendCommandString (const PString &command) |
| Send a command meta-string. More...
|
|
void | AbortCommandString () |
| Abort a command string that is in progress. More...
|
|
unsigned | GetTraceContextIdentifier () const |
| Get PTRACE context identifier. More...
|
|
void | SetTraceContextIdentifier (unsigned id) |
|
void | GetTraceContextIdentifier (PObject &obj) |
|
void | GetTraceContextIdentifier (PObject *obj) |
|
void | SetTraceContextIdentifier (const PObject &obj) |
|
void | SetTraceContextIdentifier (const PObject *obj) |
|
virtual | ~PObject () |
|
virtual PObject * | Clone () const |
| Create a copy of the class on the heap. More...
|
|
template<class CLS > |
CLS * | CloneAs () const |
| As for Clone() but converts to specified type. More...
|
|
virtual Comparison | CompareObjectMemoryDirect (const PObject &obj) const |
| Determine the byte wise comparison of two objects. More...
|
|
bool | operator== (const PObject &obj) const |
| Compare the two objects. More...
|
|
bool | operator!= (const PObject &obj) const |
| Compare the two objects. More...
|
|
bool | operator< (const PObject &obj) const |
| Compare the two objects. More...
|
|
bool | operator> (const PObject &obj) const |
| Compare the two objects. More...
|
|
bool | operator<= (const PObject &obj) const |
| Compare the two objects. More...
|
|
bool | operator>= (const PObject &obj) const |
| Compare the two objects. More...
|
|
virtual const char * | GetClass (unsigned ancestor=0) const |
| Get the current dynamic type of the object instance. More...
|
|
PBoolean | IsClass (const char *cls) const |
|
virtual PBoolean | InternalIsDescendant (const char *clsName) const |
| Determine if the dynamic type of the current instance is a descendent of the specified class. More...
|
|
__inline const PObject * | PTraceObjectInstance () const |
|
virtual void | PrintOn (ostream &strm) const |
| Output the contents of the object to the stream. More...
|
|
virtual void | ReadFrom (istream &strm) |
| Input the contents of the object from the stream. More...
|
|
|
enum | PXBlockType { PXReadBlock,
PXWriteBlock,
PXAcceptBlock,
PXConnectBlock
} |
|
enum | Errors {
NoError,
NotFound,
FileExists,
DiskFull,
AccessDenied,
DeviceInUse,
BadParameter,
NoMemory,
NotOpen,
Timeout,
Interrupted,
BufferTooSmall,
Miscellaneous,
ProtocolFailure,
Unavailable,
NumNormalisedErrors
} |
| Normalised error codes. More...
|
|
enum | ErrorGroup { LastReadError,
LastWriteError,
LastGeneralError,
NumErrorGroups
} |
| Error groups. More...
|
|
typedef PNotifierTemplate
< PChannel::AsyncContext & > | AsyncNotifier |
|
enum | ShutdownValue { ShutdownRead = 0,
ShutdownWrite = 1,
ShutdownReadAndWrite = 2
} |
|
static PString | GetErrorText (Errors lastError, int osError=0) |
| Get error message description. More...
|
|
static Comparison | InternalCompareObjectMemoryDirect (const PObject *obj1, const PObject *obj2, PINDEX size) |
| Internal function caled from CompareObjectMemoryDirect() More...
|
|
static const char * | Class () |
| Get the name of the class as a C string. More...
|
|
static __inline const PObject * | PTraceObjectInstance (const char *) |
|
static __inline const PObject * | PTraceObjectInstance (const PObject *obj) |
|
| PChannel (const PChannel &) |
|
PChannel & | operator= (const PChannel &) |
|
virtual PBoolean | ConvertOSError (P_INT_PTR libcReturnValue, ErrorGroup group=LastGeneralError) |
| Convert an operating system error into platform independent error. More...
|
|
int | ReadCharWithTimeout (PTimeInterval &timeout) |
| Read a character with specified timeout. More...
|
|
PBoolean | ReceiveCommandString (int nextChar, const PString &reply, PINDEX &pos, PINDEX start) |
|
virtual int | os_errno () const |
|
PBoolean | PXSetIOBlock (PXBlockType type, const PTimeInterval &timeout) |
|
P_INT_PTR | GetOSHandleAsInt () const |
|
int | PXClose () |
|
| PChannel () |
| Create the channel. More...
|
|
This class can be used to access the bundled/monitored UDP sockets using the PChannel API.