|
|
| | 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.