Dashel, a cross-platform stream abstraction library. More...
Classes | |
class | DashelException |
The one size fits all exception for streams. More... | |
class | DisconnectableStream |
In addition its parent, this stream can also make select return because of the target has disconnected. More... | |
class | ExpandableBuffer |
A simple buffer that can expand when data is added (like std::vector), but that can also return a pointer to the underlying data (like std::valarray). More... | |
class | FileDescriptorStream |
File descriptor, uses send/recv for read/write. More... | |
class | FileStream |
Stream for file. More... | |
class | Hub |
class | IPV4Address |
A IP version 4 address. More... | |
class | MemoryPacketStream |
The system-neutral part of packet stream that implement the actual memory buffers. More... | |
class | PacketStream |
A data stream, that can be later send data as at UDP packet or read data from an UDP packet. More... | |
class | ParameterSet |
Parameter set. More... | |
class | SelectableStream |
Stream with a file descriptor that is selectable. More... | |
class | SerialPortEnumerator |
Serial port enumerator class. More... | |
class | SerialStream |
Stream for serial port, in addition to FileDescriptorStream, save old state of serial port. More... | |
class | SocketServerStream |
Socket server stream. More... | |
class | SocketStream |
Socket, uses send/recv for read/write. More... | |
class | StdinStream |
Standard input stream, simply a FileStream with a specific target. More... | |
class | StdoutStream |
Standard output stream, simply a FileStream with a specific target. More... | |
class | Stream |
A data stream, with low-level (not-endian safe) read/write functions. More... | |
struct | StreamTypeRegistry |
Registry of constructors to a stream, to add new stream types dynamically. More... | |
class | UDPSocketStream |
UDP Socket, uses sendto/recvfrom for read/write. More... | |
class | WaitableStream |
Stream with a handle that can be waited on. More... | |
Enumerations | |
enum | EvType { EvData, EvPotentialData, EvClosed, EvConnect } |
Event types that can be waited on. More... | |
Functions | |
template<typename C > | |
Stream * | createInstance (const std::string &target, const Hub &hub) |
Create an instance of stream type C, passing target to its constructor. | |
template<typename C > | |
Stream * | createInstanceWithHub (const std::string &target, const Hub &hub) |
Create an instance of stream type C, passing target to its constructor. | |
template<typename Derived , typename Base > | |
Derived | polymorphic_downcast (Base base) |
Asserts a dynamic cast. Similar to the one in boost/cast.hpp. | |
void | startWinSock () |
Ensure that the WinSock API has been started properly. | |
Variables | |
StreamTypeRegistry | __attribute__ ((init_priority(1000))) streamTypeRegistry |
StreamTypeRegistry | streamTypeRegistry |
The registry of all known stream types. |
Dashel, a cross-platform stream abstraction library.
enum Dashel::EvType |
Event types that can be waited on.
EvData |
Data available. |
EvPotentialData |
Maybe some data or maybe not. |
EvClosed |
Closed by remote. |
EvConnect |
Incoming connection detected. |
Definition at line 76 of file dashel-win32.cpp.
Stream* Dashel::createInstance | ( | const std::string & | target, |
const Hub & | hub | ||
) |
Stream* Dashel::createInstanceWithHub | ( | const std::string & | target, |
const Hub & | hub | ||
) |
Derived Dashel::polymorphic_downcast | ( | Base | base | ) | [inline] |
Asserts a dynamic cast. Similar to the one in boost/cast.hpp.
Definition at line 299 of file dashel-posix.cpp.
void Dashel::startWinSock | ( | ) |
Ensure that the WinSock API has been started properly.
Definition at line 187 of file dashel-win32.cpp.
StreamTypeRegistry Dashel::__attribute__((init_priority(1000))) streamTypeRegistry |
The registry of all known stream types.
Definition at line 1356 of file dashel-win32.cpp.