![]() |
mFrame
|
終端機系統重啟命令類別 更多...
#include <TerminalCommandReboot.h>
公開方法(Public Methods) | |
TerminalCommandReboot (const char *command=TEXT_COMMAND) noexcept | |
建構新的終端機系統重啟命令物件 | |
virtual | ~TerminalCommandReboot (void) override |
解構終端機系統重啟命令物件 | |
virtual const char * | getCommand (void) const override |
取得命令名稱。 | |
virtual const char * | getDescription (void) const override |
取得命令描述。 | |
virtual bool | onCommand (ufm::util::LineReader &lineReader, ufm::term::TerminalControl &control) override |
執行命令。 | |
virtual bool | onTabComplete (ufm::util::LineReader &lineReader, ufm::lang::Appendable &appendable, ufm::term::TerminalControl &control) override |
當按下 Tab 鍵時執行自動補全功能 | |
virtual bool | test (ufm::term::TerminalControl &t) override |
測試指定的終端機控制物件是否符合重啟條件 | |
virtual void | onControlKey (ufm::util::Console::KeyControl key, bool alt) override |
處理控制鍵按鍵事件 | |
virtual void | onFunctionKey (ufm::util::Console::KeyFunction key, bool alt) override |
處理功能鍵事件 | |
virtual void | onKey (char key, bool alt) override |
處理一般字元鍵事件 | |
bool | isRebooting (void) const |
檢查系統是否正在執行重啟程序 | |
bool | cancelReboot (void) |
取消進行中的重啟操作 | |
![]() | |
void * | operator new (size_t n) |
使用運算子 new 分配記憶體 | |
void * | operator new (size_t n, void *p) |
在指定記憶體上調用運算子 new | |
virtual ufm::lang::Object & | getObject (void) override |
取得對應的 Object 物件 | |
void | delay (int milliseconds) const |
延遲指定的毫秒數進行執行緒等待 | |
bool | equals (Object *object) const |
判斷與另一物件是否為相同參照(指標型態比較) | |
bool | equals (Object &object) const |
判斷與另一物件是否為相同參照(參照型態比較) | |
void | wait (void) const |
使當前線程等待直到被通知 | |
bool | wait (int timeout) const |
等待通知或超時 | |
bool | yield (void) const |
讓執行緒讓渡控制權給同優先權的下一個執行緒 | |
int | lock (void) const |
核心鎖定,鎖定期間禁止線程切換 | |
int | unlock (void) const |
核心解鎖 | |
ufm::sys::Thread * | currentThread (void) const |
取得當前執行緒指標 | |
virtual int | hashcode (void) const |
返回對象的哈希碼值。支持這種方法是為了散列表,如HashMap提供的那樣。 | |
![]() | |
virtual | ~Interface (void)=default |
虛擬析構函式 | |
靜態公開屬性 | |
static constexpr const char *const | TEXT_COMMAND = "reboot" |
預設命令名稱 | |
終端機系統重啟命令類別
此類別實作了終端機的系統重啟功能,提供延遲重啟和立即重啟的命令。 繼承自多個介面:ufm::lang::Object、ufm::term::TerminalListener、 ufm::func::Predicate<ufm::term::TerminalControl> 和 ufm::util::Console::Event, 提供完整的重啟命令處理、條件判斷和鍵盤事件處理功能。
|
noexcept |
建構新的終端機系統重啟命令物件
初始化一個新的重啟命令物件,可以指定自訂的命令名稱。 如果未提供命令名稱,將使用預設的 "reboot" 命令。 同時初始化內部計時器和延遲相關變數。
command | 命令字串,預設為 TEXT_COMMAND ("reboot") |
|
overridevirtual |
解構終端機系統重啟命令物件
清理物件資源並執行必要的清理作業。 此解構子為虛擬函式,確保正確的多型解構行為。
bool ufm::term::TerminalCommandReboot::cancelReboot | ( | void | ) |
取消進行中的重啟操作
中止目前進行中的重啟程序,停止倒數計時並回到正常狀態。 只有在延遲重啟過程中才能成功取消。
|
overridevirtual |
|
overridevirtual |
bool ufm::term::TerminalCommandReboot::isRebooting | ( | void | ) | const |
檢查系統是否正在執行重啟程序
檢查當前是否有進行中的重啟操作,包括延遲重啟的倒數狀態。
|
overridevirtual |
|
overridevirtual |
處理控制鍵按鍵事件
當使用者按下控制鍵(如 Ctrl+C 等)時,此方法會被呼叫。 可用於處理重啟過程中的中斷操作。
key | 按下的控制鍵類型 |
alt | 是否同時按下 Alt 鍵 |
|
overridevirtual |
處理功能鍵事件
當使用者按下功能鍵(如 F1-F12 等)時,此方法會被呼叫。 可用於提供重啟相關的快捷功能。
key | 按下的功能鍵類型 |
alt | 是否同時按下 Alt 鍵 |
|
overridevirtual |
處理一般字元鍵事件
當使用者按下一般字元鍵時,此方法會被呼叫。 可用於處理重啟過程中的使用者輸入。
key | 按下的字元 |
alt | 是否同時按下 Alt 鍵 |
|
overridevirtual |
當按下 Tab 鍵時執行自動補全功能
當使用者在終端機中按下 Tab 鍵時,此方法會被呼叫來提供命令補全功能。 可以根據當前輸入的內容提供適當的補全建議。
lineReader | 當前行讀取器,包含使用者已輸入的內容 |
appendable | 用於輸出補全結果的可附加介面 |
control | 終端機控制介面,用於操作終端機狀態 |
|
overridevirtual |
測試指定的終端機控制物件是否符合重啟條件
檢查終端機控制物件的狀態,判斷是否可以執行重啟操作。 此方法實作 Predicate 介面,用於條件判斷。
t | 要測試的終端機控制物件 |