diff --git a/apis/SystemAudioPlayer/ISystemAudioPlayer.h b/apis/SystemAudioPlayer/ISystemAudioPlayer.h index 35154792..efe1db9b 100644 --- a/apis/SystemAudioPlayer/ISystemAudioPlayer.h +++ b/apis/SystemAudioPlayer/ISystemAudioPlayer.h @@ -31,27 +31,120 @@ namespace Exchange { enum { ID = ID_SYSTEMAUDIOPLAYER_NOTIFICATION }; virtual ~INotification() {} - virtual void OnSAPEvents(const string &data) = 0; + + // @text onSAPEvents + // @alt onsapevents + // @brief Notify SAP events + // @param data: SAP event data + virtual void OnSAPEvents(const string &data) {} }; virtual ~ISystemAudioPlayer() {} + + // @json:omit + // @text configure + // @brief Configure SAP plugin + // @param service: interface instance + // @retval Core::NONE: Indicates successful configuration of SAP plugin + virtual Core::hresult Configure(PluginHost::IShell* service) = 0; + + // @json:omit + // @text register + // @brief Register notification interface + // @param sink: notification interface pointer + // @retval Core::NONE: Indicates successful registration of sink + virtual Core::hresult Register(INotification* sink) = 0; + + // @json:omit + // @text unregister + // @brief Unregister notification interface + // @param sink: notification interface pointer + // @retval Core::NONE: Indicates successful unregistration of sink + virtual Core::hresult Unregister(INotification* sink) = 0; + + // @text open + // @brief Open player instance + // @param input: parameters needed for player + // @param output: response params + // @retval Core::NONE: Indicates successful opening of audio player + virtual Core::hresult Open(const string &input, string &output /* @out */) = 0; + + // @text play + // @brief Start playback of audio. + // @param input: parameters needed for audio playback + // @param output: response params + // @retval Core::NONE: Indicates successful playstate change of audio player + virtual Core::hresult Play(const string &input, string &output /* @out */) = 0; + + // @text playBuffer + // @brief Start playback of audiobuffer. + // @param input: Base64 encoded audio data + // @param output: response params + // @retval Core::NONE: Indicates successful playstate change of audio player + virtual Core::hresult PlayBuffer(const string &input, string &output /* @out */) = 0; + + // @text pause + // @brief Pausing audio playback + // @param input: audio player id + // @param output: response params + // @retval Core::NONE: Indicates successful pausing of audio player + virtual Core::hresult Pause(const string &input, string &output /* @out */) = 0; + + // @text resume + // @brief Resuming audio playback + // @param input: audio player id + // @param output: response params + // @retval Core::NONE: Indicates successful resume of audio player + virtual Core::hresult Resume(const string &input, string &output /* @out */) = 0; + + // @text stop + // @brief Stopping audio playback + // @param input: audio player id + // @param output: response params + // @retval Core::NONE: Indicates successful stop of audio player + virtual Core::hresult Stop(const string &input, string &output /* @out */) = 0; + + // @text close + // @brief Closing audio playback + // @param input: audio player id + // @param output: response params + // @retval Core::NONE: Indicates successful close of audio player + virtual Core::hresult Close(const string &input, string &output /* @out */) = 0; + + // @text setMixerLevels + // @brief Setting mixer levels + // @param input: audio player id + // @param output: response params + // @retval Core::NONE: Indicates successful setting of mixer levels + virtual Core::hresult SetMixerLevels(const string &input, string &output /* @out */) = 0; + + // @text setSmartVolControl + // @brief Setting smart volume level + // @param input: audio player id and smart volume params + // @param output: response params + // @retval Core::NONE: Indicates successful setting of smart volume level + virtual Core::hresult SetSmartVolControl(const string &input, string &output /* @out */) = 0; + + // @text isPlaying + // @brief playing state of audio player + // @param input: audio player details + // @param output: response params + // @retval Core::NONE: Indicates audio player state retrieved successfully + virtual Core::hresult IsPlaying(const string &input, string &output /* @out */) = 0; + + // @text config + // @brief Setting audio player configuration + // @param input: configuration details + // @param output: response params + // @retval Core::NONE: Indicates proper set of audio player configuration + virtual Core::hresult Config(const string &input, string &output /* @out */) = 0; - virtual uint32_t Configure(PluginHost::IShell* service) = 0; - virtual void Register(INotification* sink) = 0; - virtual void Unregister(INotification* sink) = 0; - - virtual uint32_t Open(const string &input, string &output /* @out */) = 0; - virtual uint32_t Play(const string &input, string &output /* @out */) = 0; - virtual uint32_t PlayBuffer(const string &input, string &output /* @out */) = 0; - virtual uint32_t Pause(const string &input, string &output /* @out */) = 0; - virtual uint32_t Resume(const string &input, string &output /* @out */) = 0; - virtual uint32_t Stop(const string &input, string &output /* @out */) = 0; - virtual uint32_t Close(const string &input, string &output /* @out */) = 0; - virtual uint32_t SetMixerLevels(const string &input, string &output /* @out */) = 0; - virtual uint32_t SetSmartVolControl(const string &input, string &output /* @out */) = 0; - virtual uint32_t IsPlaying(const string &input, string &output /* @out */) = 0; - virtual uint32_t Config(const string &input, string &output /* @out */) = 0; - virtual uint32_t GetPlayerSessionId(const string &input, string &output /* @out */) = 0; + // @text getPlayerSessionId + // @brief Getting audio player session id + // @param input: player details + // @param output: response params + // @retval Core::NONE: Indicates GetPlayerSessionId retrieved successfuly + virtual Core::hresult GetPlayerSessionId(const string &input, string &output /* @out */) = 0; };