Nol.A SDK Library 26.11.2
For IoT System Software Development
Loading...
Searching...
No Matches
ConfigConsole Class Reference

시리얼 포트를 통해 장치 설정을 대화형으로 구성하기 위한 콘솔 클래스 More...

#include <ConfigConsole.hpp>

Public Member Functions

 ConfigConsole (SerialPort &)
 ConfigConsole 객체를 생성합니다.
 ~ConfigConsole ()
 설정 콘솔을 종료하고 리소스를 정리합니다.
void begin (uint8_t waitSec, void(*handlerOnDone)())
 설정 콘솔을 시작합니다.
void close ()
 설정 콘솔을 종료합니다.
void addItem (ConfigItem *)
 설정 항목을 콘솔에 추가합니다.
void printConfiguration (bool trailingNewLine=true)
 현재 설정값을 JSON 형식으로 출력합니다.
void printHelp (bool trailingNewLine=true)
 도움말을 JSON 형식으로 출력합니다.
bool allItemsAreValid ()
 모든 설정 항목이 유효한 값인지 확인합니다.
bool isActive ()
 콘솔이 현재 활성 상태인지 확인합니다.

Protected Member Functions

virtual void onKeyboardInput ()
 키보드 입력을 처리합니다.

Protected Attributes

SerialPort & serial
 사용 중인 시리얼 포트
char keyBuf [256]
 키보드 입력 버퍼
Timer inputTimeout
 입력 타임아웃 타이머

Detailed Description

시리얼 포트를 통해 장치 설정을 대화형으로 구성하기 위한 콘솔 클래스

ConfigConsole은 키보드 입력으로 명령어를 받아 설정값을 조회하고 변경할 수 있습니다. 출력은 JSON 형식으로 제공됩니다.

Examples
plm150/PLS100W_RD-WSD-M-02/main.cpp.

Constructor & Destructor Documentation

◆ ConfigConsole()

ConfigConsole::ConfigConsole ( SerialPort & )

ConfigConsole 객체를 생성합니다.

Parameters
serial설정 콘솔이 사용할 시리얼 포트

Member Function Documentation

◆ addItem()

void ConfigConsole::addItem ( ConfigItem * )

설정 항목을 콘솔에 추가합니다.

Parameters
item추가할 ConfigItem 포인터

◆ allItemsAreValid()

bool ConfigConsole::allItemsAreValid ( )

모든 설정 항목이 유효한 값인지 확인합니다.

Returns
모든 항목이 유효하면 true

◆ begin()

void ConfigConsole::begin ( uint8_t waitSec,
void(* handlerOnDone )() )

설정 콘솔을 시작합니다.

Parameters
waitSec콘솔 진입 전 대기 시간 (초). 0이면 즉시 진입.
handlerOnDone설정 완료 시 호출될 콜백 함수

◆ close()

void ConfigConsole::close ( )

설정 콘솔을 종료합니다.

입력 타이머를 중단하고 시리얼 포트 수신을 중지하며 등록된 콜백을 해제합니다. begin()의 역동작입니다.

◆ isActive()

bool ConfigConsole::isActive ( )

콘솔이 현재 활성 상태인지 확인합니다.

Returns
활성 상태이면 true

◆ onKeyboardInput()

virtual void ConfigConsole::onKeyboardInput ( )
protectedvirtual

키보드 입력을 처리합니다.

입력된 명령어를 파싱하고 해당하는 설정 항목의 핸들러를 호출합니다. (ls, help, quit, <key>=

)

◆ printConfiguration()

void ConfigConsole::printConfiguration ( bool trailingNewLine = true)

현재 설정값을 JSON 형식으로 출력합니다.

Parameters
trailingNewLine출력 후 개행 여부

◆ printHelp()

void ConfigConsole::printHelp ( bool trailingNewLine = true)

도움말을 JSON 형식으로 출력합니다.

Parameters
trailingNewLine출력 후 개행 여부

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