DUDS
Distributed Update of Data from Something
duds::hardware::display Namespace Reference

General support for operations that are common for display devices. More...

Classes

class  BppGraphicDisplay
 Base class for bit-per-pixel graphic displays. More...
 
struct  clearTo_impl
 Part of the clearTo() display stream manipulator. More...
 
struct  DisplayBoundsError
 The specified location is beyond the bounds of the display. More...
 
struct  DisplayError
 Base class for all errors specifically from a TextDisplay. More...
 
struct  DisplayGlyphIndexError
 The index given for a definable glyph was outside the allowable range. More...
 
struct  DisplayGlyphSizeError
 The image given for a definable glyph was an unsupported size. More...
 
struct  DisplaySizeError
 The specified display size is unsupported, or there is a display size mismatch. More...
 
struct  DisplayUninitialized
 An attempt was made to use an uninitialized display object. More...
 
struct  Info_DisplayColRow
 Stores column and row data for display errors. More...
 
struct  move_impl
 Part of the move() display stream manipulator. More...
 
class  TextDisplay
 A fairly generic interface to a character based display that lacks color. More...
 
class  TextDisplayBaseStream
 The base class for output streams that write to TextDisplay objects. More...
 
class  TextDisplayBasicBufferedStream
 An output stream for buffering writes to TextDisplay objects. More...
 
class  TextDisplayBasicBufferedStreambuf
 Writes output from a stream into an internal buffer, and writes that buffer to the display when sync() is called. More...
 
class  TextDisplayBasicStream
 An output stream for immediately writing data to TextDisplay objects. More...
 
class  TextDisplayBasicStreambuf
 Moves output from an output stream to a TextDisplay one character at a time. More...
 

Typedefs

typedef std::shared_ptr< BppGraphicDisplayBppGraphicDisplaySptr
 
typedef boost::error_info< struct Info_DisplayGlyph, int > DisplayGlyphIndex
 Index used for a definable glyph. More...
 
typedef TextDisplayBasicBufferedStream< char > TextDisplayBufferedStream
 Most common type for the TextDisplayBasicBufferedStream. More...
 
typedef TextDisplayBasicBufferedStreambuf< char > TextDisplayBufferedStreambuf
 Most common type for the TextDisplayBasicBufferedStreambuf. More...
 
typedef boost::error_info< struct Info_DisplayPosition, Info_DisplayColRowTextDisplayPositionInfo
 Column and row of a display position as part of an error. More...
 
typedef boost::error_info< struct Info_DisplaySize, Info_DisplayColRowTextDisplaySizeInfo
 Column and row size of a display as part of an error. More...
 
typedef TextDisplayBasicStream< char > TextDisplayStream
 Most common type for the TextDisplayBasicStream. More...
 
typedef TextDisplayBasicStreambuf< char > TextDisplayStreambuf
 Most common type for the TextDisplayBasicStreambuf. More...
 

Functions

template<class Char , class Traits >
std::basic_ostream< Char, Traits > & clear (std::basic_ostream< Char, Traits > &os)
 Display stream manipulator that clears all text from the display and places the cursor in the upper left corner. More...
 
clearTo_impl clearTo (unsigned int c, unsigned int r)
 Display stream manipulator that clears the display from the current cursor location to the given location. More...
 
move_impl move (unsigned int c, unsigned int r)
 Display stream manipulator that moves the display cursor to the given location. More...
 
template<class Char , class Traits >
std::basic_ostream< Char, Traits > & startLine (std::basic_ostream< Char, Traits > &os)
 Moves the cursor to the start of a line clearing text along the way. More...
 

Detailed Description

General support for operations that are common for display devices.

Typedef Documentation

◆ BppGraphicDisplaySptr

Examples:
bppmenu.cpp.

Definition at line 94 of file BppGraphicDisplay.hpp.

◆ DisplayGlyphIndex

typedef boost::error_info<struct Info_DisplayGlyph, int> duds::hardware::display::DisplayGlyphIndex

Index used for a definable glyph.

Definition at line 73 of file DisplayErrors.hpp.

◆ TextDisplayBufferedStream

◆ TextDisplayBufferedStreambuf

◆ TextDisplayPositionInfo

typedef boost::error_info<struct Info_DisplayPosition, Info_DisplayColRow> duds::hardware::display::TextDisplayPositionInfo

Column and row of a display position as part of an error.

Definition at line 64 of file DisplayErrors.hpp.

◆ TextDisplaySizeInfo

typedef boost::error_info<struct Info_DisplaySize, Info_DisplayColRow> duds::hardware::display::TextDisplaySizeInfo

Column and row size of a display as part of an error.

Definition at line 69 of file DisplayErrors.hpp.

◆ TextDisplayStream

Most common type for the TextDisplayBasicStream.

Examples:
textdisplay.cpp.

Definition at line 674 of file TextDisplayStream.hpp.

◆ TextDisplayStreambuf

Function Documentation

◆ clear()

template<class Char , class Traits >
std::basic_ostream<Char, Traits>& duds::hardware::display::clear ( std::basic_ostream< Char, Traits > &  os)

Display stream manipulator that clears all text from the display and places the cursor in the upper left corner.

The modifer will do nothing if the stream is not a TextDisplayBasicStream type.

Author
Jeff Jackowski
Examples:
textdisplay.cpp.

Definition at line 572 of file TextDisplayStream.hpp.

Referenced by duds::general::NddArray< double >::copyElements(), duds::general::NddArray< double >::load(), duds::ui::graphics::BppImage::make(), duds::general::NddArray< double >::remake(), and duds::general::NddArray< double >::~NddArray().

◆ clearTo()

clearTo_impl duds::hardware::display::clearTo ( unsigned int  c,
unsigned int  r 
)
inline

Display stream manipulator that clears the display from the current cursor location to the given location.

The cursor will be moved to the spot immediately after the given position.

Parameters
cThe end column.
rThe end row.
Exceptions
TextDisplayRangeErrorThe requested position is beyond the display's boundries.
Author
Jeff Jackowski

Definition at line 659 of file TextDisplayStream.hpp.

◆ move()

move_impl duds::hardware::display::move ( unsigned int  c,
unsigned int  r 
)
inline

Display stream manipulator that moves the display cursor to the given location.

Parameters
cThe destination column.
rThe destination row.
Exceptions
TextDisplayRangeErrorThe requested position is beyond the display's boundries.
Author
Jeff Jackowski
Examples:
bppmenu.cpp, clockLCD.cpp, rendertext.cpp, st7920.cpp, and textdisplay.cpp.

Definition at line 623 of file TextDisplayStream.hpp.

Referenced by duds::ui::graphics::BppFontPool::add(), duds::ui::graphics::BppImageArchive::add(), duds::ui::graphics::BppFont::add(), duds::hardware::interface::Conversation::add(), duds::ui::graphics::BppFontPool::addWithCache(), duds::ui::graphics::BppFontPool::addWithoutCache(), duds::hardware::devices::instruments::AM2320::AM2320(), duds::hardware::devices::instruments::AMG88xx::AMG88xx(), duds::hardware::devices::instruments::APDS9301::APDS9301(), duds::ui::menu::MenuAccess::append(), duds::ui::menu::Menu::append(), duds::hardware::interface::PinConfiguration::attachPort(), duds::hardware::interface::ChipBinarySelectManager::ChipBinarySelectManager(), duds::hardware::interface::ChipMultiplexerSelectManager::ChipMultiplexerSelectManager(), duds::hardware::interface::ChipPinSelectManager::ChipPinSelectManager(), duds::hardware::interface::ChipPinSetSelectManager::ChipPinSetSelectManager(), duds::hardware::interface::PinConfiguration::ChipSel::ChipSel(), duds::hardware::interface::ChipSelect::ChipSelect(), duds::hardware::devices::displays::HD44780::configure(), duds::hardware::devices::displays::ST7920::configure(), duds::hardware::interface::DigitalPinSet::DigitalPinSet(), duds::hardware::devices::instruments::FXOS8700CQ::FXOS8700CQ(), duds::hardware::GenericMeasurementSignalQueue< SVT, SQT, TVT, TQT, IS, ISArgs >::GenericMeasurementSignalQueue(), duds::ui::graphics::BppFont::get(), duds::ui::graphics::GridLayoutConfig::GridLayoutConfig(), duds::hardware::devices::displays::HD44780::HD44780(), duds::ui::menu::renderers::BppIconItem::icon(), duds::hardware::devices::instruments::INA219::INA219(), duds::ui::menu::MenuAccess::insert(), duds::ui::menu::Menu::insert(), duds::hardware::devices::instruments::LSM9DS1AccelGyro::LSM9DS1AccelGyro(), duds::hardware::devices::instruments::LSM9DS1Mag::LSM9DS1Mag(), duds::ui::graphics::BppStringCache::make(), duds::ui::menu::renderers::GenericBppMenuIconItem::make(), duds::hardware::devices::instruments::MCP9808::MCP9808(), duds::hardware::GenericMeasurementSignalQueue< SVT, SQT, TVT, TQT, IS, ISArgs >::move(), duds::ui::graphics::BppImageArchiveSequence::iterator::operator++(), duds::hardware::interface::DigitalPinAccess::operator=(), duds::hardware::interface::DigitalPinSetAccess::operator=(), duds::os::linux::EvdevInput::operator=(), duds::hardware::GenericMeasurementSignalQueue< SVT, SQT, TVT, TQT, IS, ISArgs >::operator=(), duds::os::linux::Poller::operator=(), duds::general::NddArray< double >::operator=(), duds::ui::graphics::BppImage::operator=(), duds::hardware::GenericMeasurementSignalQueue< SVT, SQT, TVT, TQT, IS, ISArgs >::popBack(), duds::hardware::GenericMeasurementSignalQueue< SVT, SQT, TVT, TQT, IS, ISArgs >::popFront(), duds::ui::Path::push(), duds::hardware::interface::ChipMultiplexerSelectManager::releaseAccess(), duds::general::NddArray< double >::resize(), duds::hardware::devices::clocks::GenericCppClock< CLK, SVT, SQT, TVT, TQT >::sample(), duds::hardware::devices::clocks::GenericLinuxClock< SVT, SQT, TVT, TQT >::sample(), duds::hardware::devices::clocks::GenericPosixClock< SVT, SQT, TVT, TQT >::sample(), duds::hardware::interface::ChipMultiplexerSelectManager::setAccess(), duds::hardware::devices::GenericDevice< SVT, SQT, TVT, TQT >::setMeasurement(), duds::hardware::interface::DigitalPinMasterSyncSerial::setPins(), duds::hardware::interface::ChipBinarySelectManager::setSelectPin(), duds::hardware::interface::ChipPinSelectManager::setSelectPin(), duds::hardware::interface::ChipPinSetSelectManager::setSelectPins(), duds::hardware::devices::displays::ST7920::ST7920(), duds::ui::graphics::BppStringCache::text(), duds::hardware::devices::instruments::TSL2591::TSL2591(), and duds::os::linux::Poller::wait().

◆ startLine()

template<class Char , class Traits >
std::basic_ostream<Char, Traits>& duds::hardware::display::startLine ( std::basic_ostream< Char, Traits > &  os)

Moves the cursor to the start of a line clearing text along the way.

If the cursor is already at the start of a line, it will not move and no text will be cleared.

Examples:
clockLCD.cpp.

Definition at line 585 of file TextDisplayStream.hpp.