00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifndef __REMIX_DECK_H__
00029 #define __REMIX_DECK_H__
00030
00053 #include <remix/remix_types.h>
00054
00055 #if defined(__cplusplus)
00056 extern "C" {
00057 #endif
00058
00059
00060 RemixDeck * remix_deck_new (RemixEnv * env);
00061
00062 RemixCount remix_deck_set_mixlength (RemixEnv * env, RemixDeck * deck, RemixCount mixlength);
00063 RemixCount remix_deck_get_mixlength (RemixEnv * env, RemixDeck * deck);
00064
00065 CDList * remix_deck_get_tracks (RemixEnv * env, RemixDeck * deck);
00066
00067
00068 RemixTrack * remix_track_new (RemixEnv * env, RemixDeck * deck);
00069 RemixPCM remix_track_set_gain (RemixEnv * env, RemixTrack * track, RemixPCM gain);
00070 RemixPCM remix_track_get_gain (RemixEnv * env, RemixTrack * track);
00071 RemixCount remix_track_set_mixlength (RemixEnv * env, RemixTrack * track,
00072 RemixCount mixlength);
00073 RemixCount remix_track_get_mixlength (RemixEnv * env, RemixTrack * track);
00074 void remix_remove_track (RemixEnv * env, RemixTrack * track);
00075
00076 RemixDeck * remix_track_get_deck (RemixEnv * env, RemixTrack * track);
00077
00078
00079
00080 RemixLayer * remix_layer_new_ontop (RemixEnv * env, RemixTrack * track,
00081 RemixTimeType timetype);
00082 RemixLayer * remix_layer_new_above (RemixEnv * env, RemixLayer * above,
00083 RemixTimeType timetype);
00084 RemixLayer * remix_layer_move_ontop (RemixEnv * env, RemixLayer * layer, RemixTrack * track);
00085 RemixLayer * remix_layer_move_above (RemixEnv * env, RemixLayer * layer, RemixLayer * above);
00086 RemixLayer * remix_layer_raise (RemixEnv * env, RemixLayer * layer);
00087 RemixLayer * remix_layer_lower (RemixEnv * env, RemixLayer * layer);
00088 RemixTrack * remix_layer_get_track (RemixEnv * env, RemixLayer * layer);
00089 RemixDeck * remix_layer_get_deck (RemixEnv * env, RemixLayer * layer);
00090 RemixTimeType remix_layer_set_timetype (RemixEnv * env, RemixLayer * layer,
00091 RemixTimeType new_type);
00092 RemixTimeType remix_layer_get_timetype (RemixEnv * env, RemixLayer * layer);
00093 RemixSound * remix_layer_get_sound_before (RemixEnv * env, RemixLayer * layer,
00094 RemixTime time);
00095 RemixSound * remix_layer_get_sound_at (RemixEnv * env, RemixLayer * layer, RemixTime time);
00096 RemixSound * remix_layer_get_sound_after (RemixEnv * env, RemixLayer * layer, RemixTime time);
00097 RemixLayer * remix_layer_below (RemixEnv * env, RemixLayer * layer);
00098 RemixLayer * remix_layer_above (RemixEnv * env, RemixLayer * layer);
00099
00100
00101 RemixSound * remix_sound_new (RemixEnv * env, RemixBase * source,
00102 RemixLayer * layer,
00103 RemixTime start_time, RemixTime duration);
00104
00105 RemixBase * remix_sound_set_source (RemixEnv * env, RemixSound * sound,
00106 RemixBase * source);
00107 RemixBase * remix_sound_get_source (RemixEnv * env, RemixSound * sound);
00108 RemixLayer * remix_sound_get_layer (RemixEnv * env, RemixSound * sound);
00109 RemixTrack * remix_sound_get_track (RemixEnv * env, RemixSound * sound);
00110 RemixDeck * remix_sound_get_deck (RemixEnv * env, RemixSound * sound);
00111
00112 RemixTime remix_sound_move (RemixEnv * env, RemixSound * sound,
00113 RemixTime time);
00114 RemixSound * remix_sound_get_prev (RemixEnv * env, RemixSound * sound);
00115 RemixSound * remix_sound_get_next (RemixEnv * env, RemixSound * sound);
00116
00117 RemixTime remix_sound_set_start_time (RemixEnv * env, RemixSound * sound,
00118 RemixTime time);
00119 RemixTime remix_sound_get_start_time (RemixEnv * env, RemixSound * sound);
00120 RemixTime remix_sound_set_duration (RemixEnv * env, RemixSound * sound,
00121 RemixTime time);
00122 RemixTime remix_sound_get_duration (RemixEnv * env, RemixSound * sound);
00123
00124 RemixBase * remix_sound_set_rate_envelope (RemixEnv * env, RemixSound * sound,
00125 RemixBase * rate_envelope);
00126 RemixBase * remix_sound_get_rate_envelope (RemixEnv * env, RemixSound * sound);
00127 RemixBase * remix_sound_set_gain_envelope (RemixEnv * env, RemixSound * sound,
00128 RemixBase * gain_envelope);
00129 RemixBase * remix_sound_get_gain_envelope (RemixEnv * env, RemixSound * sound);
00130 RemixBase * remix_sound_set_blend_envelope (RemixEnv * env, RemixSound * sound,
00131 RemixBase * blend_envelope);
00132 RemixBase * remix_sound_get_blend_envelope (RemixEnv * env, RemixSound * sound);
00133
00134 #if defined(__cplusplus)
00135 }
00136 #endif
00137
00138 #endif