diff options
author | Christian Linke <christian.linke@bmw.de> | 2015-12-02 17:25:12 +0000 |
---|---|---|
committer | Christian Linke <christian.linke@bmw.de> | 2015-12-02 17:25:12 +0000 |
commit | 3f8431c8d0886dd18ab157694a64766a2d7288bd (patch) | |
tree | 92e6743dd11f74a0862c1b69ec36e5cd364b39ff /AudioManagerUtilities/include/CAmWatchdog.h | |
parent | 2312c029d469fcc00bc465f44c398f6460cb51e5 (diff) | |
download | audiomanager-3f8431c8d0886dd18ab157694a64766a2d7288bd.tar.gz |
moved watchdog into utilities and created .pc file for utilities
Signed-off-by: Christian Linke <christian.linke@bmw.de>
Diffstat (limited to 'AudioManagerUtilities/include/CAmWatchdog.h')
-rwxr-xr-x | AudioManagerUtilities/include/CAmWatchdog.h | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/AudioManagerUtilities/include/CAmWatchdog.h b/AudioManagerUtilities/include/CAmWatchdog.h new file mode 100755 index 0000000..4449c75 --- /dev/null +++ b/AudioManagerUtilities/include/CAmWatchdog.h @@ -0,0 +1,50 @@ +/** + * SPDX license identifier: MPL-2.0 + * + * Copyright (C) 2012, BMW AG + * + * This file is part of GENIVI Project AudioManager. + * + * Contributions are licensed to the GENIVI Alliance under one or more + * Contribution License Agreements. + * + * \copyright + * This Source Code Form is subject to the terms of the + * Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with + * this file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * + * \author Christian Linke, christian.linke@bmw.de BMW 2011,2012 + * + * \file CAmWatchdog.h + * For further information see http://www.genivi.org/. + * + */ + +#ifndef CAMWATCHDOG_H_ +#define CAMWATCHDOG_H_ + +#include "CAmSocketHandler.h" + +namespace am +{ + +/** + * Implements the watchdog of the AudioManager with the help of systemd + */ +class CAmWatchdog +{ +public: + CAmWatchdog(CAmSocketHandler* CAmSocketHandler); + virtual ~CAmWatchdog(); + void startWatchdog(); //!< starts the watchdog by sending ready to systemD + void timerCallback(sh_timerHandle_t handle, void * userData); //!< the watchdog timer callback + TAmShTimerCallBack<CAmWatchdog> TimerCallback; + +private: + CAmSocketHandler* mpCAmSocketHandler; //!< pointer to the sockethandler + sh_timerHandle_t mHandle; //!< handle of the timer +}; + +} /* namespace am */ +#endif /* CAMWATCHDOG_H_ */ |