Files
interactive/rcts/rc_mond/src/Main.h
T
2026-08-07 17:38:18 +09:00

93 lines
2.9 KiB
C++

/****************************************************************************
Main.h for rc_mond
-----------------------------------------
begin : 2015/06/02
copyright : (C) 2005 Solbox Inc.
author : Dev Storage Team
email : huibong@solbox.com
version : 3.5
CopyRight(C) 2005 Solbox Inc. All Rights reserved.
Redistribution and use in source and binary forms, with or with out
modification, are not permitted in outside of Solbox Inc.
*****************************************************************************/
#ifndef __RC_MOND_MAIN_H__
#define __RC_MOND_MAIN_H__
#include <unistd.h>
#include <stdlib.h>
#include <string>
#ifdef __cplusplus
extern "C" {
#endif
/// @brief 사용 방법을 화면에 표시하기 위한 함수.
void PrintUsage( void );
/// @brief Version 정보를 화면에 표시하기 위한 함수
void PrintVersion( void );
/// @brief 현재 Process가 기동중인지 여부를 판단하기 위한 함수( 프로세스 중복 실행 체크)
/// @return 이미 해당 프로세스가 기동 중인 경우 true 반환, 그렇지 않으면 false 반환.
bool IsCurrentProcessRun( void );
/// @brief std 상에 trim 함수가 없어서 직접 구현 아니면 boost/algorithm/string.hpp 상의 boost::trim 함수 사용
/// @param str [in/out] Trim 할 문자열을 저장한 String 참조변수.
/// @return void
void Trim( std::string & str );
/// @brief 프로세스 종료에 따른 반복적인 종료 관련 작업을 수행하기 위한 함수.
void ReadyToExit( void );
/// @brief Main 프로세스 signal 처리 설정을 위한 함수
/// @return void
void SetSignalMain( void );
/// @brief vmasd 가 전송하는 시스템 정보 수신을 담당할 Worker 프로세스 생성.
/// @return 생성 성공시 true, 실패시 false
bool MakeWorkerRecvVmasd();
/// @brief csagentd 가 전송하는 FHS system 상태 정보 수신을 담당할 Worker 프로세스 생성.
/// @return 생성 성공시 true, 실패시 false
bool MakeWorkerRecvSystem();
/// @brief csagentd 가 전송하는 FHS check 상태 정보 수신을 담당할 Worker 프로세스 생성.
/// @return 생성 성공시 true, 실패시 false
bool MakeWorkerRecvCheck();
/// @brief 각 Client 의 요청을 수신하여.. Alive FHS 목록 등의 정보 전달을 담당할 Worker 프로세스 생성.
/// @return 생성 성공시 true, 실패시 false
bool MakeWorkerSendInfo();
/// @brief 각 FHS 정보의 GMS 전송, Top FHS 정보의 RCDB 업데이트 등을 수행할 Worker 프로세스 생성.
/// @return 생성 성공시 true, 실패시 false
bool MakeWorkerControl();
// FHS vmasd 로 부터 Broadcast 되는 FHS 상태 정보 수신을 위한 UDP Receive Socket 생성
bool MakeVmasdRecvSocket( void );
// FHS csagentd 가 전송하는 시스템 상태 정보 수신을 위한 TCP listen socket 생성
bool MakeSystemRecvSocket( void );
// FHS csagentd 가 전송하는 서비스 상태 체크 정보 수신을 위한 TCP listen socket 생성
bool MakeCheckRecvSocket( void );
// fimngd 등과 같은 외부 모듈과 통신을 통해 정보를 전달하기 위한 TCP listen socket 생성
bool MakeInfoSendSocket( void );
#ifdef __cplusplus
}
#endif
#endif /* __RC_MOND_MAIN_H__ */