diff options
Diffstat (limited to 'extern/audaspace/bindings/C/AUD_DynamicMusic.h')
-rw-r--r-- | extern/audaspace/bindings/C/AUD_DynamicMusic.h | 145 |
1 files changed, 145 insertions, 0 deletions
diff --git a/extern/audaspace/bindings/C/AUD_DynamicMusic.h b/extern/audaspace/bindings/C/AUD_DynamicMusic.h new file mode 100644 index 00000000000..c362479591e --- /dev/null +++ b/extern/audaspace/bindings/C/AUD_DynamicMusic.h @@ -0,0 +1,145 @@ +/******************************************************************************* +* Copyright 2015-2016 Juan Francisco Crespo Galán +* +* 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. +******************************************************************************/ + +#pragma once + +#include "AUD_Types.h" +#include "AUD_Handle.h" + +#ifdef __cplusplus +extern "C" { +#endif + +/** +* Creates a new dynamic music player. +* \param device The device that will be used to play sounds. +* \return The new DynamicMusic object. +*/ +extern AUD_API AUD_DynamicMusic* AUD_DynamicMusic_create(AUD_Device* device); + +/** +* Deletes a dynamic music player. +* \param player The DynamicMusic object to be deleted. +*/ +extern AUD_API void AUD_DynamicMusic_free(AUD_DynamicMusic* player); + +/** +* Adds a sound scene to a dynamic music player. +* \param player The DynamicMusic object. +* \param scene The sound to be added as a scene. +* \return The index of the new scene. +*/ +extern AUD_API int AUD_DynamicMusic_addScene(AUD_DynamicMusic* player, AUD_Sound* scene); + +/** +* Changes the current sound scene of a dynamic music player. +* \param player The DynamicMusic object. +* \param scene The index of the scene to be played. +* \return 0 if the target scene doesn't exist. +*/ +extern AUD_API int AUD_DynamicMusic_setSecene(AUD_DynamicMusic* player, int scene); + +/** +* Retrives the index of the current scene. +* \param player The DynamicMusic object. +* \return The index of the current scene. +*/ +extern AUD_API int AUD_DynamicMusic_getScene(AUD_DynamicMusic* player); + +/** +* Adds a new transition between two scenes. +* \param player The DynamicMusic object. +* \param ini The origin scene for the transition. +* \param end The end scene for the transition. +* \param transition A sound that will be used as transition between two scenes. +* \return 0 if the ini or end scenes don't exist. +*/ +extern AUD_API int AUD_DynamicMusic_addTransition(AUD_DynamicMusic* player, int ini, int end, AUD_Sound* transition); + +/** +* Changes the fade time for the default transitions of a dynamic music player. +* \param player The DynamicMusic object. +* \param seconds The amount of secods that the crossfade transition will take. +*/ +extern AUD_API void AUD_DynamicMusic_setFadeTime(AUD_DynamicMusic* player, float seconds); + +/** +* Retrieves the fade time of a dynamic music player. +* \param player The DynamicMusic object. +* \return The fade time of the player. +*/ +extern AUD_API float AUD_DynamicMusic_getFadeTime(AUD_DynamicMusic* player); + +/** +* Resumes the current scene playback of a dynamic music player if it is paused. +* \param player The DynamicMusic object. +* \return 0 if the playback wasn't resumed. +*/ +extern AUD_API int AUD_DynamicMusic_resume(AUD_DynamicMusic* player); + +/** +* Pauses the current scene of a dynamic music player. +* \param player The DynamicMusic object. +* \return 0 if the playback wasn't paused. +*/ +extern AUD_API int AUD_DynamicMusic_pause(AUD_DynamicMusic* player); + +/** +* Seeks the current playing scene of a dynamic music player. +* \param player The DynamicMusic object. +* \param position The new position from which to play back, in seconds. +* \return 0 if the seeking wasn't possible. +*/ +extern AUD_API int AUD_DynamicMusic_seek(AUD_DynamicMusic* player, float position); + +/** +* Retrieves the position of the current scene of a dynamic music player. +* \param player The DynamicMusic object. +* \return The position of the current playing scene. +*/ +extern AUD_API float AUD_DynamicMusic_getPosition(AUD_DynamicMusic* player); + +/** +* Retrieves the volume of the current scene of a dynamic music player. +* \param player The DynamicMusic object. +* \return The volume of the current playing scene. +*/ +extern AUD_API float AUD_DynamicMusic_getVolume(AUD_DynamicMusic* player); + +/** +* Changes the volume of the current scene in a dynamic music player. +* \param player The DynamicMusic object. +* \param 0 if the volume couldn't be changed. +*/ +extern AUD_API int AUD_DynamicMusic_setVolume(AUD_DynamicMusic* player, float volume); + +/** +* Retrieves the status of the current scene in a dynamic music player. +* \param player The DynamicMusic object. +* \return The Status of the current playing scene. +*/ +extern AUD_API AUD_Status AUD_DynamicMusic_getStatus(AUD_DynamicMusic* player); + +/** +* Stops the current scene of a dynamic music player. +* \param player The DynamicMusic object. +* \return 0 if the playback wasn't stopped. +*/ +extern AUD_API int AUD_DynamicMusic_stop(AUD_DynamicMusic* player); + +#ifdef __cplusplus +} +#endif
\ No newline at end of file |