Public Member Functions | Protected Attributes
Dashel::SocketServerStream Class Reference

Socket server stream. More...

Inheritance diagram for Dashel::SocketServerStream:
Inheritance graph
[legend]

List of all members.

Public Member Functions

virtual void flush ()
 Flushes stream.
virtual void flush ()
 Flushes stream.
virtual bool isDataInRecvBuffer () const
 Return true while there is some unread data in the reception buffer.
virtual void notifyEvent (Hub *srv, EvType &t)
 Callback when an event is notified, allowing the stream to rearm it.
virtual void read (void *data, size_t size)
 Reads data from the stream.
virtual void read (void *data, size_t size)
 Reads data from the stream.
virtual bool receiveDataAndCheckDisconnection ()
 If necessary, read a byte and check for disconnection; return true on disconnection, fales otherwise.
 SocketServerStream (const std::string &params, const Hub &hub)
 Create the stream and associates a file descriptor.
 SocketServerStream (const std::string &targetName)
 Create the stream and associates a file descriptor.
virtual void write (const void *data, const size_t size)
 Write data to the stream.
virtual void write (const void *data, const size_t size)
 Write data to the stream.
 ~SocketServerStream ()
 Destructor.

Protected Attributes

HANDLE hev
 The real data event handle.
const bool resolveIncomingNames
SOCKET sock
 The socket.

Detailed Description

Socket server stream.

This stream is used for listening for incoming connections. It cannot be used for transfering data.

Definition at line 554 of file dashel-posix.cpp.


Constructor & Destructor Documentation

Dashel::SocketServerStream::SocketServerStream ( const std::string &  targetName) [inline]

Create the stream and associates a file descriptor.

Definition at line 558 of file dashel-posix.cpp.

Dashel::SocketServerStream::SocketServerStream ( const std::string &  params,
const Hub hub 
) [inline]

Create the stream and associates a file descriptor.

Definition at line 280 of file dashel-win32.cpp.

Destructor.

Definition at line 318 of file dashel-win32.cpp.


Member Function Documentation

virtual void Dashel::SocketServerStream::flush ( ) [inline, virtual]

Flushes stream.

Calling this function requests the stream to be flushed, this may ensure that data is written to physical media or actually sent over a wire. The exact performed function depends on the stream type and operating system.

Implements Dashel::Stream.

Definition at line 355 of file dashel-win32.cpp.

virtual void Dashel::SocketServerStream::flush ( ) [inline, virtual]

Flushes stream.

Calling this function requests the stream to be flushed, this may ensure that data is written to physical media or actually sent over a wire. The exact performed function depends on the stream type and operating system.

Implements Dashel::Stream.

Definition at line 591 of file dashel-posix.cpp.

virtual bool Dashel::SocketServerStream::isDataInRecvBuffer ( ) const [inline, virtual]

Return true while there is some unread data in the reception buffer.

Implements Dashel::SelectableStream.

Definition at line 594 of file dashel-posix.cpp.

virtual void Dashel::SocketServerStream::notifyEvent ( Hub srv,
EvType t 
) [inline, virtual]

Callback when an event is notified, allowing the stream to rearm it.

Parameters:
srvHub instance.
tType of event.

Reimplemented from Dashel::WaitableStream.

Definition at line 328 of file dashel-win32.cpp.

virtual void Dashel::SocketServerStream::read ( void *  data,
size_t  size 
) [inline, virtual]

Reads data from the stream.

Reads all requested data from the stream, blocking until all the data has been read, or some error occurs. Errors are signaled by throwing a DashelException exception, which may be caused either by device errors or reaching the end of file.

Parameters:
dataPointer to the memory where the read data should be stored.
sizeAmount of data to read in bytes.

Implements Dashel::Stream.

Definition at line 356 of file dashel-win32.cpp.

virtual void Dashel::SocketServerStream::read ( void *  data,
size_t  size 
) [inline, virtual]

Reads data from the stream.

Reads all requested data from the stream, blocking until all the data has been read, or some error occurs. Errors are signaled by throwing a DashelException exception, which may be caused either by device errors or reaching the end of file.

Parameters:
dataPointer to the memory where the read data should be stored.
sizeAmount of data to read in bytes.

Implements Dashel::Stream.

Definition at line 592 of file dashel-posix.cpp.

If necessary, read a byte and check for disconnection; return true on disconnection, fales otherwise.

Implements Dashel::SelectableStream.

Definition at line 593 of file dashel-posix.cpp.

virtual void Dashel::SocketServerStream::write ( const void *  data,
const size_t  size 
) [inline, virtual]

Write data to the stream.

Writes all requested data to the stream, blocking until all the data has been written, or some error occurs. Errors are signaled by throwing a DashelException exception. This function does not flush devices, therefore the data may not really have been written on return, but only been buffered. In order to flush the stream, call flush().

Parameters:
dataPointer to the data to write.
sizeAmount of data to write in bytes.

Implements Dashel::Stream.

Definition at line 354 of file dashel-win32.cpp.

virtual void Dashel::SocketServerStream::write ( const void *  data,
const size_t  size 
) [inline, virtual]

Write data to the stream.

Writes all requested data to the stream, blocking until all the data has been written, or some error occurs. Errors are signaled by throwing a DashelException exception. This function does not flush devices, therefore the data may not really have been written on return, but only been buffered. In order to flush the stream, call flush().

Parameters:
dataPointer to the data to write.
sizeAmount of data to write in bytes.

Implements Dashel::Stream.

Definition at line 590 of file dashel-posix.cpp.


Member Data Documentation

HANDLE Dashel::SocketServerStream::hev [protected]

The real data event handle.

Whether Dashel should try to resolve the peer's hostname of incoming TCP connections

Definition at line 274 of file dashel-win32.cpp.

Definition at line 275 of file dashel-win32.cpp.

The socket.

Definition at line 269 of file dashel-win32.cpp.


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


dashel
Author(s): Stéphane Magnenat
autogenerated on Thu Jan 2 2014 11:17:11