#include <winpipes.h>
Inheritance diagram for WindowsPipeSource:
Definition at line 104 of file winpipes.h.
Public Member Functions | |
WindowsPipeSource (HANDLE h=INVALID_HANDLE_VALUE, bool pumpAll=false, BufferedTransformation *attachment=NULL) | |
bool | GetOwnership () const |
void | SetOwnership (bool own) |
operator HANDLE () | |
bool | HandleValid () const |
void | AttachHandle (HANDLE h, bool own=false) |
HANDLE | DetachHandle () |
void | CloseHandle () |
unsigned int | GetMaxWaitObjectCount () const |
void | GetWaitObjects (WaitObjectContainer &container) |
unsigned int | GeneralPump2 (unsigned long &byteCount, bool blockingOutput=true, unsigned long maxTime=INFINITE_TIME, bool checkDelimiter=false, byte delimiter='\n') |
pump up to maxSize bytes using at most maxTime milliseconds | |
bool | SourceExhausted () const |
bool | MustWaitForResult () |
void | Receive (byte *buf, unsigned int bufLen) |
unsigned int | GetReceiveResult () |
bool | EofReceived () const |
unsigned int | GetMaxWaitObjectCount () const |
maximum number of wait objects that this object can return | |
void | GetWaitObjects (WaitObjectContainer &container) |
put wait objects into container | |
virtual bool | MustWaitToReceive () |
bool | Wait (unsigned long milliseconds) |
wait on this object | |
NONBLOCKING SOURCE | |
unsigned long | GeneralPump (unsigned long maxSize=ULONG_MAX, unsigned long maxTime=INFINITE_TIME, bool checkDelimiter=false, byte delimiter='\n') |
unsigned long | TimedPump (unsigned long maxTime) |
unsigned long | PumpLine (byte delimiter='\n', unsigned long maxSize=1024) |
unsigned int | Pump2 (unsigned long &byteCount, bool blocking=true) |
unsigned int | PumpMessages2 (unsigned int &messageCount, bool blocking=true) |
Protected Member Functions | |
virtual void | HandleChanged () |
const NetworkReceiver & | GetReceiver () const |
virtual void | HandleError (const char *operation) const |
void | CheckAndHandleError (const char *operation, BOOL result) const |
Protected Attributes | |
HANDLE | m_h |
bool | m_own |
|
pump up to maxSize bytes using at most maxTime milliseconds If checkDelimiter is true, pump up to delimiter, which itself is not extracted or pumped. Implements NonblockingSource. Definition at line 40 of file network.cpp. References SecBlock< T, A >::begin(), Timer::ElapsedTime(), NetworkReceiver::EofReceived(), NetworkReceiver::GetReceiveResult(), INFINITE_TIME, NetworkReceiver::MustWaitForResult(), NetworkReceiver::MustWaitToReceive(), NetworkReceiver::Receive(), SecBlock< T, A >::size(), and Waitable::Wait(). |
|
wait on this object same as creating an empty container, calling GetWaitObjects(), and calling Wait() on the container Definition at line 247 of file wait.cpp. References Waitable::GetWaitObjects(), and WaitObjectContainer::Wait(). Referenced by NetworkSource::GeneralPump2(), and NetworkSink::TimedFlush(). |