|
The Pedigree Project 0.1
|
Collaboration diagram for UnixSocketConnection::Stream:Classes | |
| struct | Control |
| class | ControlGuard |
Public Member Functions | |
| size_t | write (const uint8_t *buffer, size_t count, bool block, const SharedPointer< SocketRights > &rights=SharedPointer< SocketRights >(), bool *interrupted=nullptr) |
| size_t | writeVectors (const struct iovec *vectors, size_t vectorCount, bool block, const SharedPointer< SocketRights > &rights, bool *interrupted=nullptr) |
| size_t | read (uint8_t *buffer, size_t count, bool block, SharedPointer< SocketRights > *rights=nullptr, bool *interrupted=nullptr) |
| size_t | readVectors (struct iovec *vectors, size_t vectorCount, bool block, SharedPointer< SocketRights > *rights, bool *interrupted=nullptr) |
| bool | canWrite (bool block) |
| bool | canRead (bool block) |
| uint64_t | readableGeneration () const |
| uint64_t | writableGeneration () const |
| void | disableWrites () |
| void | disableReads () |
| void | monitor (Semaphore *waiter) |
| void | monitor (Thread *thread, Event *event) |
| void | cullMonitorTargets (Semaphore *waiter) |
| void | cullMonitorTargets (Event *event) |
| Buffer< uint8_t, true > & | buffer () |
Private Member Functions | |
| void | discardControls () |
| void | discardControlsIfRequested () |
Private Attributes | |
| Buffer< uint8_t, true > | m_Bytes |
| UnixStreamSerializationGate | m_SendLock |
| UnixStreamSerializationGate | m_ReceiveLock |
| Mutex | m_ControlLock |
| Atomic< bool > | m_DiscardControlsRequested |
| List< Control * > | m_Controls |
| uint64_t | m_BytesWritten |
| uint64_t | m_BytesRead |
One ordered byte/control direction in a connected stream socket pair.
Definition at line 99 of file UnixFilesystem.h.
| UnixSocketConnection::Stream::Stream | ( | ) |
Definition at line 199 of file UnixFilesystem.cc.
| UnixSocketConnection::Stream::~Stream | ( | ) |
Definition at line 215 of file UnixFilesystem.cc.
|
inline |
Definition at line 125 of file UnixFilesystem.h.
| bool UnixSocketConnection::Stream::canRead | ( | bool | block | ) |
Definition at line 391 of file UnixFilesystem.cc.
| bool UnixSocketConnection::Stream::canWrite | ( | bool | block | ) |
Definition at line 387 of file UnixFilesystem.cc.
| void UnixSocketConnection::Stream::cullMonitorTargets | ( | Event * | event | ) |
Definition at line 439 of file UnixFilesystem.cc.
| void UnixSocketConnection::Stream::cullMonitorTargets | ( | Semaphore * | waiter | ) |
Definition at line 435 of file UnixFilesystem.cc.
| void UnixSocketConnection::Stream::disableReads | ( | ) |
Definition at line 407 of file UnixFilesystem.cc.
| void UnixSocketConnection::Stream::disableWrites | ( | ) |
Definition at line 403 of file UnixFilesystem.cc.
|
private |
Definition at line 443 of file UnixFilesystem.cc.
|
private |
Definition at line 449 of file UnixFilesystem.cc.
| void UnixSocketConnection::Stream::monitor | ( | Semaphore * | waiter | ) |
Definition at line 427 of file UnixFilesystem.cc.
Definition at line 431 of file UnixFilesystem.cc.
| size_t UnixSocketConnection::Stream::read | ( | uint8_t * | buffer, |
| size_t | count, | ||
| bool | block, | ||
| SharedPointer< SocketRights > * | rights = nullptr, |
||
| bool * | interrupted = nullptr |
||
| ) |
Definition at line 300 of file UnixFilesystem.cc.
| uint64_t UnixSocketConnection::Stream::readableGeneration | ( | ) | const |
Definition at line 395 of file UnixFilesystem.cc.
| size_t UnixSocketConnection::Stream::readVectors | ( | struct iovec * | vectors, |
| size_t | vectorCount, | ||
| bool | block, | ||
| SharedPointer< SocketRights > * | rights, | ||
| bool * | interrupted = nullptr |
||
| ) |
Definition at line 306 of file UnixFilesystem.cc.
| uint64_t UnixSocketConnection::Stream::writableGeneration | ( | ) | const |
Definition at line 399 of file UnixFilesystem.cc.
| size_t UnixSocketConnection::Stream::write | ( | const uint8_t * | buffer, |
| size_t | count, | ||
| bool | block, | ||
| const SharedPointer< SocketRights > & | rights = SharedPointer<SocketRights>(), |
||
| bool * | interrupted = nullptr |
||
| ) |
Definition at line 221 of file UnixFilesystem.cc.
| size_t UnixSocketConnection::Stream::writeVectors | ( | const struct iovec * | vectors, |
| size_t | vectorCount, | ||
| bool | block, | ||
| const SharedPointer< SocketRights > & | rights, | ||
| bool * | interrupted = nullptr |
||
| ) |
Definition at line 228 of file UnixFilesystem.cc.
|
private |
Definition at line 151 of file UnixFilesystem.h.
|
private |
Definition at line 158 of file UnixFilesystem.h.
|
private |
Definition at line 157 of file UnixFilesystem.h.
|
private |
Definition at line 154 of file UnixFilesystem.h.
Definition at line 156 of file UnixFilesystem.h.
|
private |
Definition at line 155 of file UnixFilesystem.h.
|
private |
Definition at line 153 of file UnixFilesystem.h.
|
private |
Definition at line 152 of file UnixFilesystem.h.