216338a4112e8d864539ba80cea4e3d74029e062
[profile/ivi/genivi/genivi-audio-manager.git] / AudioManagerDaemon / docx / 14_z_nodeStateManagement.dox
1  /*
2  * Copyright (C) 2012, BMW AG
3  *
4  * This file is part of GENIVI Project AudioManager.
5  *
6  * Contributions are licensed to the GENIVI Alliance under one or more
7  * Contribution License Agreements.
8  *
9  * \copyright
10  * This Source Code Form is subject to the terms of the
11  * Mozilla Public License, v. 2.0. If a  copy of the MPL was not distributed with
12  * this file, You can obtain one at http://mozilla.org/MPL/2.0/.
13  *
14  * \\author Christian Linke (christian.linke@bmw.de)
15  *
16  */
17
18 /*!
19 \page nsm The Node state management
20 \section The Node state managemer
21 The nodestatemanager is part of the GENIVI compliance. It basically handles startup and rundown of components in the IVI context.\n
22 For more information, please go to http://projects.genivi.org
23
24 \section nsmiact The Interaction between the NodeStateManager and the AudioManager
25 It is the job of am::CAmNodeStateCommunicator to interact with the nodestatemanager via DBUS.\n
26 The ControllerPlugin can register by the NSM to be informed when a shutdown will occour. For this, the Audiomanager presents an DBus interface, defined in LifeCycleConsumer.xml that will be called from the NSM during a shutdown,
27 but only after the Controller registered by the NSM via am::CAmNodeStateCommunicator::nsmRegisterShutdownClient.\n
28 The controller has to answer this request during the timeout with am::CAmNodeStateCommunicator::nsmSendLifecycleRequestComplete .
29 For more information, check am::CAmNodeStateCommunicator and http://projects.genivi.org\n
30 \section nsm_overview Overview of the relations between AudioManager and NSM:
31 \image html NodeStateManagementRelations.png
32 \section nsm_reg Registering at startup
33 \image html Registrations.png
34 \section nsm_lifec Handling of Lifecyclerequests:
35 \image html Lifecylerequest.png
36
37  */