Crypto++
Public Member Functions | List of all members
Waitable Class Referenceabstract

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

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

Detailed Description

interface for objects that you can wait for

Definition at line 720 of file cryptlib.h.

Member Function Documentation

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

put wait objects into container

Parameters
callStackis 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, NetworkSink, SocketSender, NetworkSource, and SocketReceiver.

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: