Changeset View
Changeset View
Standalone View
Standalone View
extern/audaspace/bindings/C/AUD_DynamicMusic.h
- This file was added.
| /******************************************************************************* | |||||
| * 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 | |||||