contur2
Loading...
Searching...
No Matches

Console output device. More...

#include <console_device.h>

Inheritance diagram for contur::ConsoleDevice:
Collaboration diagram for contur::ConsoleDevice:

Public Member Functions

 ConsoleDevice ()
 ~ConsoleDevice () override
 ConsoleDevice (const ConsoleDevice &)=delete
ConsoleDeviceoperator= (const ConsoleDevice &)=delete
 ConsoleDevice (ConsoleDevice &&) noexcept
ConsoleDeviceoperator= (ConsoleDevice &&) noexcept
DeviceId id () const noexcept override
 Returns the unique device identifier.
std::string_view name () const noexcept override
 Returns the human-readable device name.
Result< RegisterValueread () override
 Reads a value from the device.
Result< void > write (RegisterValue value) override
 Writes a value to the device.
bool isReady () const noexcept override
 Returns true if the device is ready for I/O operations.
Public Member Functions inherited from contur::IDevice
virtual ~IDevice ()=default

Static Public Attributes

static constexpr DeviceId CONSOLE_DEVICE_ID = 1
 Default console device ID.

Private Attributes

std::unique_ptr< Impl > impl_

Additional Inherited Members

Protected Member Functions inherited from contur::IDevice
 IDevice ()=default
 IDevice (const IDevice &)=default
IDeviceoperator= (const IDevice &)=default
 IDevice (IDevice &&)=default
IDeviceoperator= (IDevice &&)=default

Detailed Description

Console output device.

Simulates a terminal/console device. Writes are sent to stdout. Reads return the last written value (echo mode).

Definition at line 19 of file console_device.h.

Constructor & Destructor Documentation

◆ ConsoleDevice() [1/3]

contur::ConsoleDevice::ConsoleDevice ( )

◆ ~ConsoleDevice()

contur::ConsoleDevice::~ConsoleDevice ( )
override

◆ ConsoleDevice() [2/3]

contur::ConsoleDevice::ConsoleDevice ( const ConsoleDevice & )
delete

◆ ConsoleDevice() [3/3]

contur::ConsoleDevice::ConsoleDevice ( ConsoleDevice && )
noexcept

Member Function Documentation

◆ id()

DeviceId contur::ConsoleDevice::id ( ) const
nodiscardoverridevirtualnoexcept

Returns the unique device identifier.

Implements contur::IDevice.

◆ isReady()

bool contur::ConsoleDevice::isReady ( ) const
nodiscardoverridevirtualnoexcept

Returns true if the device is ready for I/O operations.

Implements contur::IDevice.

◆ name()

std::string_view contur::ConsoleDevice::name ( ) const
nodiscardoverridevirtualnoexcept

Returns the human-readable device name.

Implements contur::IDevice.

◆ operator=() [1/2]

ConsoleDevice & contur::ConsoleDevice::operator= ( ConsoleDevice && )
noexcept

◆ operator=() [2/2]

ConsoleDevice & contur::ConsoleDevice::operator= ( const ConsoleDevice & )
delete

◆ read()

Result< RegisterValue > contur::ConsoleDevice::read ( )
nodiscardoverridevirtual

Reads a value from the device.

Returns
The read value, or an error if the device is not ready or read is unsupported.

Implements contur::IDevice.

◆ write()

Result< void > contur::ConsoleDevice::write ( RegisterValue value)
nodiscardoverridevirtual

Writes a value to the device.

Parameters
valueThe value to write.
Returns
Success or an error if the device is not ready or write is unsupported.

Implements contur::IDevice.

Member Data Documentation

◆ CONSOLE_DEVICE_ID

DeviceId contur::ConsoleDevice::CONSOLE_DEVICE_ID = 1
staticconstexpr

Default console device ID.

Definition at line 23 of file console_device.h.

◆ impl_

std::unique_ptr<Impl> contur::ConsoleDevice::impl_
private

Definition at line 42 of file console_device.h.


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