Waitable Class Reference

Interface for objects that can be waited on. More...

Inheritance diagram for Waitable:
BufferedTransformation NetworkReceiver NetworkSender AutoSignaling< BufferedTransformation > Bufferless< BufferedTransformation > Filter InputRejecting< BufferedTransformation > Sink SocketReceiver WindowsPipeReceiver SocketSender WindowsPipeSender

List of all members.

Public Member Functions

virtual unsigned int GetMaxWaitObjectCount () const =0
 Maximum number of wait objects that this object can return.
virtual void GetWaitObjects (WaitObjectContainer &container, CallStack const &callStack)=0
 Retrieves waitable objects.
bool Wait (unsigned long milliseconds, CallStack const &callStack)
 wait on this object

Detailed Description

Interface for objects that can be waited on.

Definition at line 1194 of file cryptlib.h.


Member Function Documentation

virtual void Waitable::GetWaitObjects ( WaitObjectContainer container,
CallStack const &  callStack 
) [pure virtual]

Retrieves waitable objects.

Parameters:
container the wait container to receive the references to the objects.
callStack CallStack object used to select waitable objects

GetWaitObjects is usually called in one of two ways. First, it can be called like something.GetWaitObjects(c, CallStack("my func after X", 0));. Second, if in an outer GetWaitObjects() method that itself takes a callStack parameter, it can be called like innerThing.GetWaitObjects(c, CallStack("MyClass::GetWaitObjects at X", &callStack));.

Implemented in BufferedTransformation, Redirector, SocketReceiver, SocketSender, WindowsPipeReceiver, and WindowsPipeSender.

Referenced by Wait().

bool Waitable::Wait ( unsigned long  milliseconds,
CallStack const &  callStack 
)

wait on this object

same as creating an empty container, calling GetWaitObjects(), and calling Wait() on the container

Definition at line 426 of file wait.cpp.

References GetWaitObjects().


The documentation for this class was generated from the following files:

Generated on 24 Mar 2016 for Crypto++ by  doxygen 1.6.1