set_on_disconnected
이 함수는 외부 요인이나 사용자 때문에 로봇 컨트롤러와의 연결이 끊겼는지 자동으로 확인하는 콜백 함수를 등록합니다. 이 이벤트가 발생하면 직접 작성한 코드를 자동으로 실행할 수 있습니다.
정의
DRFLEx.h, CDRFLEx 클래스의 public 섹션
void set_on_disconnected(TOnDisconnectedCB pCallbackFunc) {
_set_on_disconnected(_rbtCtrl, pCallbackFunc);
};
매개변수
매개변수 이름 |
자료형 |
기본값 |
설명 |
|---|---|---|---|
pCallbackFunc |
콜백 함수 정의를 참고하세요 |
반환값
없음
참고
연결이 종료되면(close_connection, 연결 끊김, 이미 연결된 객체에서 open_connection 호출) set_on_* 함수로 등록한 콜백의 등록이 모두 해제됩니다. 단, set_on_disconnected, set_on_monitoring_ctrl_io_ex(기본값인 DRCF_VERSION 3일 때), set_on_rt_monitoring_data, set_on_rt_log_alarm으로 등록한 콜백은 등록이 유지됩니다. open_connection이 성공할 때마다 나머지 콜백을 다시 등록하고 setup_monitoring_version을 다시 호출하세요. 이미 연결된 객체에서 open_connection을 호출하면 기존 연결을 먼저 닫고 “Already connected : <ip>”를 출력합니다.
콜백 함수 규칙을 참고하세요.
예제
void OnDisconnectedCB()
{
// 로봇 컨트롤러 재연결과 오류 처리가 필요합니다
}
drfl.set_on_disconnected(OnDisconnectedCB);
이 콜백 함수를 등록하면 로봇 컨트롤러와 클라이언트의 연결이 끊겼을 때 자동으로 실행됩니다. 외부 환경에서 안정적으로 운용할 수 있도록 재연결 로직이나 오류 복구 절차를 구현할 수 있습니다.