GM6000 Digital Heater Controller Branch: main
SDX-1330
Namespaces | Classes
Cpl::Io Namespace Reference

The Io namespace provides the base/common interfaces for reading and writing data from/to streams and files. More...

Detailed Description

The Io namespace provides the base/common interfaces for reading and writing data from/to streams and files.

Essentially the Cpl::Io* namespaces provide platform independent interfaces for operations that would typically be done using Posix file descriptors or Windows file HANDLEs.

Namespaces

namespace  File
 The File namespace provides the base/common interfaces for reading and writing data from/to Files.
 
namespace  Ram
 The 'Ram' namespace provides an implementation of the Cpl::Io::InputOutput interface using RAM as the media.
 
namespace  Serial
 The Serial namespace provides interfaces for accessing Serial types of devices using the Cpl::Io paradigm, aka file descriptors for Serial Ports.
 
namespace  Socket
 The Socket namespace provides interfaces for creating BSD socket connections.
 
namespace  Stdio
 The Stdio namespace provides concrete classes for the C Library's 'stdin', 'stdout', and 'stderr' input/output streams.
 
namespace  Tcp
 The 'Tcp' namespace provides interfaces for creating non-blocking Cpl::Io streams using TCP/IP connections.
 

Classes

class  AtomicOutput
 This concrete template class implements the AtomicOutputApi using a mutex to enforce the 'atomic-ness' of the operation, i.e. More...
 
class  AtomicOutputApi
 This abstract template class defines a interface for an Atomic outputs to a stream. More...
 
class  Close
 This abstract class defines a close operation that is intended to be used Input and Output streams/files. More...
 
union  Descriptor
 This union defines a 'IO descriptor' in terms of a an integer and/or a void*. More...
 
union  Descriptor.__unnamed2__
 Union the different possible types for a descriptor. More...
 
class  Input
 This partially abstract class defines a interface for operating on an input stream (example of a stream is 'stdin' or a socket connection). More...
 
class  InputOutput
 This abstract class defines a interface for operating on an input-output stream (example of a stream is socket connection). More...
 
class  IsEos
 This abstract class defines a isEos() operation that is intended to be used Input and Output streams. More...
 
class  LineReader
 This concrete class implements a Line Reader stream using a previously opened Input stream. More...
 
class  LineReaderApi
 This abstract class defines a interface for a stream line reader. More...
 
class  LineWriter
 This concrete class implements a Line Writer stream using a previously opened Output stream. More...
 
class  LineWriterApi
 This abstract class defines a interface for a stream line writer. More...
 
class  NewLine
 This interface defines the 'newline' character(s). More...
 
class  Null
 This concrete class implements a NULL InputOutput stream - that all of its input operations return 'End-of-Stream' (i.e. More...
 
class  Output
 This partially abstract class defines a interface for operating on an output stream (example of a stream is 'stdout' or a socket connection). More...
 
class  TeeOutput
 This concrete class implements a Output stream that outputs the data to MANY (or none) output streams. More...
 

Class Documentation

◆ Cpl::Io::Descriptor.__unnamed2__

union Cpl::Io::Descriptor.__unnamed2__

Union the different possible types for a descriptor.

Class Members
int m_fd The traditional standard Posix file descriptor.
void * m_handlePtr Pointer implementation (such as FILE*)