Public Types | Public Member Functions | Public Attributes
Dashel::DashelException Class Reference

The one size fits all exception for streams. More...

#include <dashel.h>

List of all members.

Public Types

enum  Source {
  Unknown, SyncError, InvalidTarget, InvalidOperation,
  ConnectionLost, IOError, ConnectionFailed, EnumerationError,
  PreviousIncomingDataNotRead
}
 The different exception causes. More...

Public Member Functions

 DashelException (Source s, int se, const char *reason, Stream *stream=NULL)
 Construct an stream exception with everything.

Public Attributes

Source source
 The exception cause.
Streamstream
 The stream that caused the exception to be thrown.
int sysError
 The reason as an OS error code.

Detailed Description

The one size fits all exception for streams.

The reason of the failure is stored in the runtime error, and is returned by what()

Definition at line 144 of file dashel.h.


Member Enumeration Documentation

The different exception causes.

Enumerator:
Unknown 

Well, hopefully never used.

SyncError 

Some synchronisation error.

InvalidTarget 

The target string was bad.

InvalidOperation 

The operation is not valid on this stream.

ConnectionLost 

The connection was lost.

IOError 

Some I/O error.

ConnectionFailed 

The connection could not be established.

EnumerationError 

Some serial enumeration error.

PreviousIncomingDataNotRead 

The incoming data was not read by the Hub subclass.

Definition at line 148 of file dashel.h.


Constructor & Destructor Documentation

Dashel::DashelException::DashelException ( Source  s,
int  se,
const char *  reason,
Stream stream = NULL 
)

Construct an stream exception with everything.

Parameters:
sSource of failure
seSystem error code.
reasonThe logical reason as a human readable string.
streamStream to which exception applies.

Definition at line 93 of file dashel-common.cpp.


Member Data Documentation

The exception cause.

Definition at line 161 of file dashel.h.

The stream that caused the exception to be thrown.

Definition at line 165 of file dashel.h.

The reason as an OS error code.

Definition at line 163 of file dashel.h.


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