X-Git-Url: https://gerrit.automotivelinux.org/gerrit/gitweb?a=blobdiff_plain;f=service%2Fsystem%2Flogger_service%2Fserver%2Finclude%2Fss_logger_device_detection.h;fp=service%2Fsystem%2Flogger_service%2Fserver%2Finclude%2Fss_logger_device_detection.h;h=5ee67c0e167eee3111d785d856bbfec33eab3231;hb=17cf21bcf8a2e29d2cbcf0a313474d2a4ee44f5d;hp=0000000000000000000000000000000000000000;hpb=9e86046cdb356913ae026f616e5bf17f6f238aa5;p=staging%2Fbasesystem.git diff --git a/service/system/logger_service/server/include/ss_logger_device_detection.h b/service/system/logger_service/server/include/ss_logger_device_detection.h new file mode 100755 index 0000000..5ee67c0 --- /dev/null +++ b/service/system/logger_service/server/include/ss_logger_device_detection.h @@ -0,0 +1,66 @@ +/* + * @copyright Copyright (c) 2016-2020 TOYOTA MOTOR CORPORATION. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/////////////////////////////////////////////////////////////////////////////// +/// \ingroup tag_NS_InterfaceunifiedLogCapture +/// \brief This file supports USB logging threads. +/// +/////////////////////////////////////////////////////////////////////////////// +#ifndef LOGGER_SERVICE_SERVER_INCLUDE_SS_LOGGER_DEVICE_DETECTION_H_ +#define LOGGER_SERVICE_SERVER_INCLUDE_SS_LOGGER_DEVICE_DETECTION_H_ + +#include +#include +#include "ss_logger_cfg.h" +#include "ss_logger_util.h" + +extern const char * USB_INSERTED_RULE; + +// USB device is ejected +extern const CHAR USB_EJECTED_RULE[]; + +// The trigger event file (/log/retrievelog.evt) file is found on USB +extern const CHAR USB_CAPTURE_LOG_EVENT_RULE[]; + +// When the command to update system with script is executed all the console +// output will be redirected to this file on /tmp folder. later it will be +// moved to USB stick +extern const CHAR CAPTURE_LOG_FILENAME[]; + +// +extern const SI_32 INVALID_FD; +class CLoggerDeviceDetection { + public: + CLoggerDeviceDetection(); + ~CLoggerDeviceDetection(); + + EFrameworkunifiedStatus Initialize(HANDLE hApp, CLoggerCfg *f_pLoggerCfg); + EFrameworkunifiedStatus DD_ServiceAvailabilityCallBack(HANDLE hApp); + EFrameworkunifiedStatus DD_OpenSessionAckCallBack(HANDLE hApp); + EFrameworkunifiedStatus DD_CloseSessionAckCallBack(HANDLE hApp); + EFrameworkunifiedStatus DD_CloseSessionWithDevDetectionSrv(HANDLE hApp); + EFrameworkunifiedStatus DD_MediaDetectCallBack(HANDLE hApp); + + EFrameworkunifiedStatus OnStop(void); + private: + CLoggerCfg *m_pLoggerCfg; + + /// Device Detection Class Instance + DeviceDetectionServiceIf m_devDetect; + + CLoggerUtil *m_loggerUtil; +}; +#endif // LOGGER_SERVICE_SERVER_INCLUDE_SS_LOGGER_DEVICE_DETECTION_H_