blocxx
|
A timeout can be absolute, which means that it will happen at the specified DateTime. More...
#include <Timeout.hpp>
Public Types | |
enum | ETimeoutType { E_ABSOLUTE, E_RELATIVE, E_RELATIVE_WITH_RESET } |
Public Member Functions | |
ETimeoutType | getType () const |
DateTime | getAbsolute () const |
float | getRelative () const |
Static Public Member Functions | |
static Timeout | absolute (const DateTime &dt) |
static Timeout | relative (float seconds) |
static Timeout | relativeWithReset (float seconds) |
Static Public Attributes | |
static Timeout | infinite = relative( std::numeric_limits<float>::infinity() ) |
Private Member Functions | |
Timeout () | |
Timeout (ETimeoutType type, const DateTime &dt) | |
Timeout (ETimeoutType type, float seconds) | |
Private Attributes | |
ETimeoutType | m_type |
DateTime | m_absolute |
float | m_seconds |
A timeout can be absolute, which means that it will happen at the specified DateTime.
A timeout can be relative, which means that it will happen at the specified interval after the call is made. A timeout can be relative with reset, which means that it will happen at the specified interval after "no activity" has occurred. "no activity" is dependent on the operation. A timeout can be infinite.
Definition at line 55 of file Timeout.hpp.
Definition at line 64 of file Timeout.hpp.
BLOCXX_NAMESPACE::Timeout::Timeout | ( | ) | [private] |
Definition at line 94 of file Timeout.cpp.
Referenced by absolute(), relative(), and relativeWithReset().
BLOCXX_NAMESPACE::Timeout::Timeout | ( | ETimeoutType | type, |
const DateTime & | dt | ||
) | [private] |
Definition at line 98 of file Timeout.cpp.
BLOCXX_NAMESPACE::Timeout::Timeout | ( | ETimeoutType | type, |
float | seconds | ||
) | [private] |
Definition at line 104 of file Timeout.cpp.
usr src packages BUILD blocxx src blocxx Timeout cpp Timeout BLOCXX_NAMESPACE::Timeout::absolute | ( | const DateTime & | dt | ) | [static] |
Definition at line 51 of file Timeout.cpp.
References E_ABSOLUTE, and Timeout().
Referenced by BLOCXX_NAMESPACE::TimeoutTimer::asAbsoluteTimeout().
DateTime BLOCXX_NAMESPACE::Timeout::getAbsolute | ( | ) | const |
Definition at line 83 of file Timeout.cpp.
References m_absolute.
Referenced by BLOCXX_NAMESPACE::TimeoutTimer::calcSeconds(), BLOCXX_NAMESPACE::TimeoutTimer::expired(), and BLOCXX_NAMESPACE::operator==().
float BLOCXX_NAMESPACE::Timeout::getRelative | ( | ) | const |
Definition at line 89 of file Timeout.cpp.
References m_seconds.
Referenced by BLOCXX_NAMESPACE::TimeoutTimer::asAbsoluteTimeout(), BLOCXX_NAMESPACE::TimeoutTimer::calcSeconds(), BLOCXX_NAMESPACE::TimeoutTimer::expired(), BLOCXX_NAMESPACE::operator==(), and BLOCXX_NAMESPACE::Process::waitCloseTerm().
Timeout::ETimeoutType BLOCXX_NAMESPACE::Timeout::getType | ( | ) | const |
Definition at line 77 of file Timeout.cpp.
References m_type.
Referenced by BLOCXX_NAMESPACE::TimeoutTimer::asAbsoluteTimeout(), BLOCXX_NAMESPACE::TimeoutTimer::calcSeconds(), BLOCXX_NAMESPACE::TimeoutTimer::expired(), BLOCXX_NAMESPACE::operator==(), BLOCXX_NAMESPACE::TimeoutTimer::resetOnLoop(), and BLOCXX_NAMESPACE::Process::waitCloseTerm().
Timeout BLOCXX_NAMESPACE::Timeout::relative | ( | float | seconds | ) | [static] |
Definition at line 59 of file Timeout.cpp.
References E_RELATIVE, and Timeout().
Referenced by BLOCXX_NAMESPACE::ServerSocket::accept(), BLOCXX_NAMESPACE::TimeoutTimer::asRelativeTimeout(), BLOCXX_NAMESPACE::Thread::definitiveCancel(), BLOCXX_NAMESPACE::Exec::executeProcessAndGatherOutput(), BLOCXX_NAMESPACE::RWLocker::getReadLock(), BLOCXX_NAMESPACE::RWLocker::getWriteLock(), BLOCXX_NAMESPACE::ThreadCounter::incThreadCount(), BLOCXX_NAMESPACE::WriteLock::lock(), BLOCXX_NAMESPACE::ReadLock::lock(), BLOCXX_NAMESPACE::ReadLock::ReadLock(), BLOCXX_NAMESPACE::Select::select(), BLOCXX_NAMESPACE::Select::selectRW(), BLOCXX_NAMESPACE::Socket::setConnectTimeout(), BLOCXX_NAMESPACE::UnnamedPipe::setReadTimeout(), BLOCXX_NAMESPACE::Socket::setReceiveTimeout(), BLOCXX_NAMESPACE::Socket::setSendTimeout(), BLOCXX_NAMESPACE::UnnamedPipe::setTimeouts(), BLOCXX_NAMESPACE::Socket::setTimeouts(), BLOCXX_NAMESPACE::UnnamedPipe::setWriteTimeout(), BLOCXX_NAMESPACE::ThreadPool::shutdown(), BLOCXX_NAMESPACE::ThreadImpl::sleep(), BLOCXX_NAMESPACE::PosixExec::spawnImpl(), BLOCXX_NAMESPACE::Semaphore::timedWait(), BLOCXX_NAMESPACE::ThreadPool::tryAddWork(), BLOCXX_NAMESPACE::Process::waitCloseTerm(), BLOCXX_NAMESPACE::ThreadCounter::waitForAll(), BLOCXX_NAMESPACE::Socket::waitForInput(), BLOCXX_NAMESPACE::SocketUtils::waitForIO(), BLOCXX_NAMESPACE::Socket::waitForOutput(), and BLOCXX_NAMESPACE::WriteLock::WriteLock().
Timeout BLOCXX_NAMESPACE::Timeout::relativeWithReset | ( | float | seconds | ) | [static] |
Definition at line 67 of file Timeout.cpp.
References E_RELATIVE_WITH_RESET, and Timeout().
Timeout BLOCXX_NAMESPACE::Timeout::infinite = relative( std::numeric_limits<float>::infinity() ) [static] |
Definition at line 62 of file Timeout.hpp.
Referenced by BLOCXX_NAMESPACE::ThreadPool::addWork(), BLOCXX_NAMESPACE::PosixUnnamedPipe::passDescriptor(), and BLOCXX_NAMESPACE::PosixUnnamedPipe::receiveDescriptor().
Definition at line 82 of file Timeout.hpp.
Referenced by getAbsolute().
float BLOCXX_NAMESPACE::Timeout::m_seconds [private] |
Definition at line 83 of file Timeout.hpp.
Referenced by getRelative().
Definition at line 81 of file Timeout.hpp.
Referenced by getType().