summaryrefslogtreecommitdiff
path: root/PluginCommandInterfaceCAPI/src-gen/org/genivi/am/CommandControlStubDefault.h
blob: 5b30746cc6c9d127e6278200fb678623e90e7bb1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
/*
* This file was generated by the CommonAPI Generators.
*
* This file was generated by the CommonAPI Generators.
*
* This file was generated by the CommonAPI Generators.
*
* 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 Aleksandar Donchev, aleksander.donchev@partner.bmw.de BMW 2013
* \author Christian Linke christian.linke@bmw.de BMW 2013
*
* For further information see http://www.genivi.org/.
*/
#ifndef ORG_GENIVI_AM_Command_Control_STUB_DEFAULT_H_
#define ORG_GENIVI_AM_Command_Control_STUB_DEFAULT_H_

#include <org/genivi/am/CommandControlStub.h>

namespace org {
namespace genivi {
namespace am {

/**
 * Provides a default implementation for CommandControlStubRemoteEvent and
 * CommandControlStub. Method callbacks have an empty implementation,
 * remote set calls on attributes will always change the value of the attribute
 * to the one received.
 * 
 * Override this stub if you only want to provide a subset of the functionality
 * that would be defined for this service, and/or if you do not need any non-default
 * behaviour.
 */
class CommandControlStubDefault : public CommandControlStub {
 public:
    CommandControlStubDefault();

    CommandControlStubRemoteEvent* initStubAdapter(const std::shared_ptr<CommandControlStubAdapter>& stubAdapter);


    virtual void connect(am_sourceID_t sourceID, am_sinkID_t sinkID, am_mainConnectionID_t& mainConnectionID, am_Error_e& error);

    virtual void disconnect(am_mainConnectionID_t mainConnectionID, am_Error_e& error);

    virtual void setVolume(am_sinkID_t sinkID, am_mainVolume_t volume, am_Error_e& error);

    virtual void volumeStep(am_sinkID_t sinkID, int16_t volumeStep, am_Error_e& error);

    virtual void setSinkMuteState(am_sinkID_t sinkID, am_MuteState_e muteState, am_Error_e& error);

    virtual void setMainSinkSoundProperty(am_sinkID_t sinkID, am_MainSoundProperty_s soundProperty, am_Error_e& error);

    virtual void setMainSourceSoundProperty(am_sourceID_t sourceID, am_MainSoundProperty_s soundProperty, am_Error_e& error);

    virtual void setSystemProperty(am_SystemProperty_s property, am_Error_e& error);

    virtual void getListMainConnections(am_MainConnection_L& listConnections, am_Error_e& error);

    virtual void getListMainSinks(am_SinkType_L& listMainSinks, am_Error_e& error);

    virtual void getListMainSources(am_SourceType_L& listMainSources, am_Error_e& error);

    virtual void getListMainSinkSoundProperties(am_sinkID_t sinkID, am_MainSoundProperty_L& listSoundProperties, am_Error_e& error);

    virtual void getListMainSourceSoundProperties(am_sourceID_t sourceID, am_MainSoundProperty_L& listSourceProperties, am_Error_e& error);

    virtual void getListSourceClasses(am_SourceClass_L& listSourceClasses, am_Error_e& error);

    virtual void getListSinkClasses(am_SinkClass_L& listSinkClasses, am_Error_e& error);

    virtual void getListSystemProperties(am_SystemProperty_L& listSystemProperties, am_Error_e& error);

    virtual void getTimingInformation(am_mainConnectionID_t mainConnectionID, am_timeSync_t& delay, am_Error_e& error);

    virtual void getListMainSinkNotificationConfigurations(am_sinkID_t sinkID, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error);

    virtual void getListMainSourceNotificationConfigurations(am_sourceID_t sourceID, am_NotificationConfiguration_L& listMainNotificationConfigurations, am_Error_e& error);

    virtual void setMainSinkNotificationConfiguration(am_sinkID_t sinkID, am_NotificationConfiguration_s mainNotificationConfiguration, am_Error_e& error);

    virtual void setMainSourceNotificationConfiguration(am_sourceID_t sourceID, am_NotificationConfiguration_s mainNotificationConfiguration, am_Error_e& error);

    
    virtual void fireNewMainConnectionEvent(const am_MainConnectionType_s& mainConnection);
    virtual void fireRemovedMainConnectionEvent(const am_mainConnectionID_t& mainConnection);
    virtual void fireNewSinkEvent(const am_SinkType_s& sink);
    virtual void fireRemovedSinkEvent(const am_sinkID_t& sinkID);
    virtual void fireNewSourceEvent(const am_SourceType_s& source);
    virtual void fireRemovedSourceEvent(const am_sourceID_t& source);
    virtual void fireNumberOfSinkClassesChangedEvent();
    virtual void fireNumberOfSourceClassesChangedEvent();
    virtual void fireMainConnectionStateChangedEvent(const am_mainConnectionID_t& connectionID, const am_ConnectionState_e& connectionState);
    virtual void fireMainSinkSoundPropertyChangedEvent(const am_sinkID_t& sinkID, const am_MainSoundProperty_s& soundProperty);
    virtual void fireMainSourceSoundPropertyChangedEvent(const am_sourceID_t& sourceID, const am_MainSoundProperty_s& soundProperty);
    virtual void fireSinkAvailabilityChangedEvent(const am_sinkID_t& sinkID, const am_Availability_s& availability);
    virtual void fireSourceAvailabilityChangedEvent(const am_sourceID_t& sourceID, const am_Availability_s& availability);
    virtual void fireVolumeChangedEvent(const am_sinkID_t& sinkID, const am_mainVolume_t& volume);
    virtual void fireSinkMuteStateChangedEvent(const am_sinkID_t& sinkID, const am_MuteState_e& muteState);
    virtual void fireSystemPropertyChangedEvent(const am_SystemProperty_s& systemProperty);
    virtual void fireTimingInformationChangedEvent(const am_mainConnectionID_t& mainConnectionID, const am_timeSync_t& time);
    virtual void fireSinkUpdatedEvent(const am_sinkID_t& sinkID, const am_sinkClass_t& sinkClassID, const am_MainSoundProperty_L& listMainSoundProperties);
    virtual void fireSourceUpdatedEvent(const am_sourceID_t& sourceID, const am_sourceClass_t& sourceClassID, const am_MainSoundProperty_L& listMainSoundProperties);
    virtual void fireSinkNotificationEvent(const am_sinkID_t& sinkID, const am_NotificationPayload_s& notification);
    virtual void fireSourceNotificationEvent(const am_sourceID_t& sourceID, const am_NotificationPayload_s& notification);
    virtual void fireMainSinkNotificationConfigurationChangedEvent(const am_sinkID_t& sinkID, const am_NotificationConfiguration_s& mainNotificationConfiguration);
    virtual void fireMainSourceNotificationConfigurationChangedEvent(const am_sourceID_t& sourceID, const am_NotificationConfiguration_s& mainNotificationConfiguration);

 protected:
    
 private:
    class RemoteEventHandler: public CommandControlStubRemoteEvent {
     public:
        RemoteEventHandler(CommandControlStubDefault* defaultStub);


     private:
        CommandControlStubDefault* defaultStub_;
    };

    RemoteEventHandler remoteEventHandler_;
    std::shared_ptr<CommandControlStubAdapter> stubAdapter_;

};

} // namespace am
} // namespace genivi
} // namespace org

#endif // ORG_GENIVI_AM_Command_Control_STUB_DEFAULT_H_