get_program_state

이 CDRFLEx 인스턴스가 시작한 프로그램의 상태를 반환합니다. 연결 직후에는 DRL_PROGRAM_STATE_LAST, drl_start 후에는 DRL_PROGRAM_STATE_PLAY, drl_pause와 drl_resume 후에는 각각 DRL_PROGRAM_STATE_HOLD와 DRL_PROGRAM_STATE_PLAY, 컨트롤러가 프로그램 정지를 보고하면 DRL_PROGRAM_STATE_STOP을 반환합니다. 티치펜던트나 다른 클라이언트에서 시작한 프로그램은 반영되지 않습니다. DRL_PROGRAM_STATE_PLAY가 컨트롤러에서 프로그램이 시작되었음을 확인해 주지는 않습니다.

정의
DRFLEx.h, CDRFLEx 클래스의 public 섹션

DRL_PROGRAM_STATE get_program_state() {
    return _get_program_state(_rbtCtrl);
};

매개변수
없음

반환값

값

설명

DRL_PROGRAM_STATE

열거형 정의를 참고하세요

예제

if (drfl.get_program_state() == DRL_PROGRAM_STATE_PLAY) {
    // 프로그램 실행 상태 일시 정지
    drfl.drl_stop(STOP_TYPE_QUICK);
}
else if (drfl.get_program_state() == DRL_PROGRAM_STATE_HOLD) {
    // 프로그램 실행 상태 재개
    drfl.drl_resume();
}

이 예제는 현재 DRL 프로그램 실행 상태를 확인합니다. 프로그램이 PLAY 상태이면 drl_stop()으로 실행을 정지하고, HOLD 상태이면 drl_resume()으로 실행을 재개합니다. 이를 통해 자동 모드에서 프로그램 흐름을 정밀하게 모니터링하고 제어할 수 있습니다.