LRAUV  revA
Input/Output

Input and Output classes. More...

Classes

class  AnalogToDigital
 This class allows one to control loads on a load controller channel. More...
 
class  DeviceIOStream
 Wraps a linux device with an IOStream class. More...
 
class  FileEncoder
 This is a rather abstract class that can be implemented by classes that encode a (closed) file. More...
 
class  FileInStream
 Wraps a c FILE* handle with an InStream class. More...
 
class  FileInStream_Test
 Unit tests for FileInStream class. More...
 
class  FileIOStream
 Wraps a c FILE* handle with an IOStream class. More...
 
class  FileOutStream
 Wraps a c FILE* handle with an OutStream class. More...
 
class  InStream
 This is a very abstract class that can be implemented by classes that want to receive stream input. More...
 
class  IOStream
 This is a rather abstract class that can be implemented by classes that want to send and receive stream input. More...
 
class  NullIOStream
 This is an implementation of IOStream that does nothing. More...
 
class  LineReader
 Utility for the concrete concern of reading lines from a given file descriptor in a non-blocking fashion. More...
 
class  LoadControl
 This class allows one to control loads on a load controller channel. More...
 
class  LPC3Reg
 Provides pointers for poking and peeking at LPC3XXX registers. More...
 
class  LzmaEncoder
 This is a rather abstract class that can be implemented by classes that encode a (closed) file. More...
 
class  MappedIOStream
 Wraps Memory mapped file with an IOStream class. More...
 
class  MappedIOStream_Test
 Unit tests for MappedIOStream class. More...
 
class  OutStream
 This is a very abstract class that can be implemented by classes that want to send stream output. More...
 
class  StrIOStream
 Wraps a Str with an IOStream class. More...
 
class  StrIOStream_Test
 Unit tests for StrIOStream class. More...
 
class  UartStream
 Implements both InStream and OutStream for the LPC3XXX Standard UART. More...
 
class  ZipEncoder
 This is a rather abstract class that can be implemented by classes that encode a (closed) file. More...
 

Enumerations

enum  LoadControl::LCBError {
  LoadControl::OK = 0, LoadControl::WDT_RESET = 0x01, LoadControl::INVALID_CMD = 0x02, LoadControl::HW_OVERCURRENT_SHUTDOWN = 0x04,
  LoadControl::SW_OVERCURRENT_WARNING = 0x08, LoadControl::CL_ACTIVATED = 0x10
}
 LCB Fault Byte. More...
 
enum  LoadControl::PowerState {
  LoadControl::POWER_UNKNOWN, LoadControl::POWER_UP, LoadControl::ON, LoadControl::POWER_DOWN_READY,
  LoadControl::POWER_DOWN, LoadControl::OFF
}
 
enum  LoadControl::LCBData {
  LoadControl::REQUESTVOLTAGE, LoadControl::PARSEVOLTAGE, LoadControl::REQUESTCURRENT, LoadControl::PARSECURRENT,
  LoadControl::DONE
}
 
enum  LPC3Reg::GFChan {
  LPC3Reg::CHAN_0 = 0x4, LPC3Reg::CHAN_1 = 0x20000, LPC3Reg::CHAN_2 = 0x40000, LPC3Reg::CHAN_4 = 0x800,
  LPC3Reg::CHAN_5 = 0x1000
}
 Ground fault channel definitions. More...
 
enum  UartStream::Baudrate {
  UartStream::B_50, UartStream::B_75, UartStream::B_110, UartStream::B_134,
  UartStream::B_150, UartStream::B_200, UartStream::B_300, UartStream::B_600,
  UartStream::B_1200, UartStream::B_1800, UartStream::B_2400, UartStream::B_4800,
  UartStream::B_9600, UartStream::B_19200, UartStream::B_38400, UartStream::B_57600,
  UartStream::B_115200, UartStream::B_230400
}
 Baudrates as per termios. More...
 
enum  UartStream::UartId {
  UartStream::NOT_UART, UartStream::UART1_TX0, UartStream::UART2_TX1, UartStream::UART3_S1,
  UartStream::UART4_S2, UartStream::UART5_S0, UartStream::UART6_S3, UartStream::UART7_TX2,
  UartStream::UART_A0, UartStream::UART_A1, UartStream::UART_A2, UartStream::UART_A3,
  UartStream::UART_A4, UartStream::UART_A5, UartStream::UART_A6, UartStream::UART_A7,
  UartStream::UART_B0, UartStream::UART_B1, UartStream::UART_B2, UartStream::UART_B3,
  UartStream::UART_B4, UartStream::UART_B5, UartStream::UART_B6, UartStream::UART_B7
}
 UARTS. More...
 
enum  UartStream::UartError {
  UartStream::OK = 0, UartStream::BUFFER_FULL, UartStream::TIMEOUT, UartStream::CANNOT_OPEN_SERIAL_PORT,
  UartStream::CANNOT_GET_DEVICE_SETTINGS, UartStream::BAD_BAUD_RATE_FOR_PORT, UartStream::BAD_PARAMETERS_FOR_PORT, UartStream::PORT_NOT_OPEN,
  UartStream::WRITE_CHAR_LOST
}
 UART Errors. More...
 

Detailed Description

Input and Output classes.

Part of an attempt to avoid the standard template library. Also accommodates some of the oddities of serial communications on the LPC3XXX.

Enumeration Type Documentation

Baudrates as per termios.

Enumerator
B_50 
B_75 
B_110 
B_134 
B_150 
B_200 
B_300 
B_600 
B_1200 
B_1800 
B_2400 
B_4800 
B_9600 
B_19200 
B_38400 
B_57600 
B_115200 
B_230400 
enum LPC3Reg::GFChan
private

Ground fault channel definitions.

Enumerator
CHAN_0 
CHAN_1 
CHAN_2 
CHAN_4 
CHAN_5 
Enumerator
REQUESTVOLTAGE 
PARSEVOLTAGE 
REQUESTCURRENT 
PARSECURRENT 
DONE 

LCB Fault Byte.

Enumerator
OK 
WDT_RESET 
INVALID_CMD 
HW_OVERCURRENT_SHUTDOWN 
SW_OVERCURRENT_WARNING 
CL_ACTIVATED 
Enumerator
POWER_UNKNOWN 
POWER_UP 
ON 
POWER_DOWN_READY 
POWER_DOWN 
OFF 

UART Errors.

Enumerator
OK 
BUFFER_FULL 
TIMEOUT 
CANNOT_OPEN_SERIAL_PORT 
CANNOT_GET_DEVICE_SETTINGS 
BAD_BAUD_RATE_FOR_PORT 
BAD_PARAMETERS_FOR_PORT 
PORT_NOT_OPEN 
WRITE_CHAR_LOST 

UARTS.

Enumerator
NOT_UART 
UART1_TX0 
UART2_TX1 
UART3_S1 
UART4_S2 
UART5_S0 
UART6_S3 
UART7_TX2 
UART_A0 
UART_A1 
UART_A2 
UART_A3 
UART_A4 
UART_A5 
UART_A6 
UART_A7 
UART_B0 
UART_B1 
UART_B2 
UART_B3 
UART_B4 
UART_B5 
UART_B6 
UART_B7