IBR-DTNSuite 0.6

ibrcommon::Conditional Class Reference

#include <Conditional.h>

Inheritance diagram for ibrcommon::Conditional:
Collaboration diagram for ibrcommon::Conditional:

List of all members.

Classes

class  attribute
class  ConditionalAbortException

Public Member Functions

 Conditional ()
virtual ~Conditional ()
void signal (bool broadcast=false)
void wait (size_t timeout=0) throw (ConditionalAbortException)
void wait (struct timespec *ts) throw (ConditionalAbortException)
void abort ()
void reset ()

Static Public Member Functions

static void gettimeout (size_t timeout, struct timespec *hires)

Detailed Description

Definition at line 12 of file Conditional.h.


Constructor & Destructor Documentation

ibrcommon::Conditional::Conditional ( )

Definition at line 15 of file Conditional.cpp.

ibrcommon::Conditional::~Conditional ( ) [virtual]

Definition at line 20 of file Conditional.cpp.


Member Function Documentation

void ibrcommon::Conditional::abort ( )

Abort all waits on this conditional.

Definition at line 134 of file Conditional.cpp.

References signal().

Referenced by ibrcommon::SimpleTimer::__cancellation(), ibrcommon::Timer::__cancellation(), and ibrcommon::Queue< StaticRoutingExtension::Task * >::abort().

Here is the call graph for this function:

void ibrcommon::Conditional::gettimeout ( size_t  timeout,
struct timespec *  hires 
) [static]

Convert a millisecond timeout into use for high resolution conditional timers.

Parameters:
timeoutto convert.
hirestimespec representation to fill.

Definition at line 112 of file Conditional.cpp.

Referenced by ibrcommon::Queue< StaticRoutingExtension::Task * >::__wait(), and ibrcommon::SimpleTimer::run().

void ibrcommon::Conditional::reset ( )

Removes the abort call off this conditional.

Definition at line 145 of file Conditional.cpp.

Referenced by ibrcommon::Queue< StaticRoutingExtension::Task * >::__wait().

void ibrcommon::Conditional::wait ( struct timespec *  ts) throw (ConditionalAbortException)

Definition at line 74 of file Conditional.cpp.


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