Public Member Functions

Waitable Class Reference

interface for objects that you can wait for More...

#include <cryptlib.h>

Inheritance diagram for Waitable:
BufferedTransformation NetworkReceiver NetworkSender AutoSignaling< BufferedTransformation > Bufferless< BufferedTransformation > Filter InputRejecting< BufferedTransformation > Sink SocketReceiver SocketSender MessageQueue ByteQueue AutoSignaling< Filter > Bufferless< Filter > CustomFlushPropagation< Filter > EncodedObjectFilter FilterWithBufferedInput FilterWithInputQueue InputRejecting< Filter > LowFirstBitWriter Unflushable< Filter > AutoSignaling< InputRejecting< BufferedTransformation > > ByteQueue::Walker Bufferless< Sink > CustomFlushPropagation< Sink > FileSink NonblockingSink

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
 put wait objects into container
bool Wait (unsigned long milliseconds, CallStack const &callStack)
 wait on this object

Detailed Description

interface for objects that you can wait for

Definition at line 731 of file cryptlib.h.


Member Function Documentation

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

put wait objects into container

Parameters:
callStack is used for tracing no wait loops, example: something.GetWaitObjects(c, CallStack("my func after X", 0));

  • or in an outer GetWaitObjects() method that itself takes a callStack parameter: innerThing.GetWaitObjects(c, CallStack("MyClass::GetWaitObjects at X", &callStack));

Implemented in BufferedTransformation, Redirector, SocketReceiver, and SocketSender.

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


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