RSeries astromech firmware
CommandScreenHandler Class Reference

#include <menus/CommandScreen.h>

+ Inheritance diagram for CommandScreenHandler:
+ Collaboration diagram for CommandScreenHandler:

Public Member Functions

 CommandScreenHandler (uint32_t screenBlankDelay=15000)
 
CommandScreencurrent ()
 
ScreenID currentID ()
 
CommandScreenfindScreen (ScreenID id)
 
unsigned getNumScreens ()
 
CommandScreengetScreenAt (unsigned index)
 
void setScreenBlankDelay (uint32_t millis)
 
uint32_t getScreenSleepDuration ()
 
void switchToScreen (ScreenID id, bool popStack=true)
 
void pushScreen (ScreenID id)
 
void popScreen ()
 
void blankScreen ()
 
void restoreScreen ()
 
bool isSleeping () const
 
void process ()
 
uint32_t elapsed ()
 
bool isEnabled () const
 
void setEnabled (bool enabled)
 

Protected Member Functions

virtual void clearContext ()
 
virtual void wakeDevice ()
 
virtual void sleepDevice ()
 
virtual void saveContext ()
 
virtual void restoreContext ()
 
virtual bool isTouching ()
 
virtual void swapDevice ()
 
virtual uint8_t currentSelection ()
 
virtual bool handleEvent ()
 
void resetBlankingTimer ()
 
void append (CommandScreen *screen)
 

Protected Attributes

CommandScreenfHead = nullptr
 
CommandScreenfTail = nullptr
 
CommandScreenfCurrentScreen = nullptr
 
uint8_t fScreenState = 0
 
uint32_t fScreenStartMillis = 0
 
uint32_t fLastMillis = 0
 
CommandScreenfLastScreen = nullptr
 
uint32_t fScreenBlankDelay
 
bool fScreenTouched = false
 
bool fEnabled = false
 
uint8_t fScreenIDSP = 0
 
ScreenID fScreenIDStack [5]
 

Constructor & Destructor Documentation

◆ CommandScreenHandler()

CommandScreenHandler::CommandScreenHandler ( uint32_t  screenBlankDelay = 15000)
inline

Member Function Documentation

◆ append()

void CommandScreenHandler::append ( CommandScreen screen)
protected

◆ blankScreen()

void CommandScreenHandler::blankScreen ( )
inline

◆ clearContext()

virtual void CommandScreenHandler::clearContext ( )
inlineprotectedvirtual

◆ current()

CommandScreen* CommandScreenHandler::current ( )
inline

◆ currentID()

ScreenID CommandScreenHandler::currentID ( )

◆ currentSelection()

virtual uint8_t CommandScreenHandler::currentSelection ( )
inlineprotectedvirtual

◆ elapsed()

uint32_t CommandScreenHandler::elapsed ( )
inline

◆ findScreen()

CommandScreen * CommandScreenHandler::findScreen ( ScreenID  id)

◆ getNumScreens()

unsigned CommandScreenHandler::getNumScreens ( )

◆ getScreenAt()

CommandScreen * CommandScreenHandler::getScreenAt ( unsigned  index)

◆ getScreenSleepDuration()

uint32_t CommandScreenHandler::getScreenSleepDuration ( )
inline

◆ handleEvent()

virtual bool CommandScreenHandler::handleEvent ( )
inlineprotectedvirtual

◆ isEnabled()

bool CommandScreenHandler::isEnabled ( ) const
inline

◆ isSleeping()

bool CommandScreenHandler::isSleeping ( ) const
inline

◆ isTouching()

virtual bool CommandScreenHandler::isTouching ( )
inlineprotectedvirtual

◆ popScreen()

void CommandScreenHandler::popScreen ( )
inline

◆ process()

void CommandScreenHandler::process ( )

◆ pushScreen()

void CommandScreenHandler::pushScreen ( ScreenID  id)
inline

◆ resetBlankingTimer()

void CommandScreenHandler::resetBlankingTimer ( )
inlineprotected

◆ restoreContext()

virtual void CommandScreenHandler::restoreContext ( )
inlineprotectedvirtual

◆ restoreScreen()

void CommandScreenHandler::restoreScreen ( )

◆ saveContext()

virtual void CommandScreenHandler::saveContext ( )
inlineprotectedvirtual

◆ setEnabled()

void CommandScreenHandler::setEnabled ( bool  enabled)
inline

◆ setScreenBlankDelay()

void CommandScreenHandler::setScreenBlankDelay ( uint32_t  millis)
inline

◆ sleepDevice()

virtual void CommandScreenHandler::sleepDevice ( )
inlineprotectedvirtual

◆ swapDevice()

virtual void CommandScreenHandler::swapDevice ( )
inlineprotectedvirtual

◆ switchToScreen()

void CommandScreenHandler::switchToScreen ( ScreenID  id,
bool  popStack = true 
)
inline

◆ wakeDevice()

virtual void CommandScreenHandler::wakeDevice ( )
inlineprotectedvirtual

Member Data Documentation

◆ fCurrentScreen

CommandScreen* CommandScreenHandler::fCurrentScreen = nullptr
protected

◆ fEnabled

bool CommandScreenHandler::fEnabled = false
protected

◆ fHead

CommandScreen* CommandScreenHandler::fHead = nullptr
protected

◆ fLastMillis

uint32_t CommandScreenHandler::fLastMillis = 0
protected

◆ fLastScreen

CommandScreen* CommandScreenHandler::fLastScreen = nullptr
protected

◆ fScreenBlankDelay

uint32_t CommandScreenHandler::fScreenBlankDelay
protected

◆ fScreenIDSP

uint8_t CommandScreenHandler::fScreenIDSP = 0
protected

◆ fScreenIDStack

ScreenID CommandScreenHandler::fScreenIDStack[5]
protected

◆ fScreenStartMillis

uint32_t CommandScreenHandler::fScreenStartMillis = 0
protected

◆ fScreenState

uint8_t CommandScreenHandler::fScreenState = 0
protected

◆ fScreenTouched

bool CommandScreenHandler::fScreenTouched = false
protected

◆ fTail

CommandScreen* CommandScreenHandler::fTail = nullptr
protected

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