X-Git-Url: https://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fplaybackengine.h;h=0a717f117f3bc0ba6e22a6ad09424d581da7b59f;hb=2cda7606e91cc23cf68a7f6376af2e8b9520b273;hp=936657a0bc3f43cf403c513b3572a85d3f6248ae;hpb=7fd85fb66168f6b518c5f2d73e04036e87faa0e1;p=goodguy%2Fcinelerra.git diff --git a/cinelerra-5.1/cinelerra/playbackengine.h b/cinelerra-5.1/cinelerra/playbackengine.h index 936657a0..0a717f11 100644 --- a/cinelerra-5.1/cinelerra/playbackengine.h +++ b/cinelerra-5.1/cinelerra/playbackengine.h @@ -38,7 +38,7 @@ #include "renderengine.inc" #include "thread.h" #include "bctimer.h" -#include "transportque.inc" +#include "transportque.h" class PlaybackEngine : public Thread { @@ -81,9 +81,8 @@ public: ChannelDB* get_channeldb(); void run(); + void send_command(int command, EDL *edl, int wait_tracking, int use_inout); void stop_playback(int wait); - void issue_command(EDL *edl, int command, int wait_tracking, - int use_inout, int update_refresh, int toggle_audio, int loop_play); void refresh_frame(int change_type, EDL *edl, int dir=1); // Maintain caches through console changes @@ -110,19 +109,24 @@ public: Canvas *output; // Copy of main preferences Preferences *preferences; -// Next command - TransportQue *que; -// Currently executing command - TransportCommand *command; -// Last command which affected transport - int last_command; - int done; - int do_cwindow; + + int put_command(TransportCommand *command, int reset); + int transport_stop(int wait_tracking); + int transport_command(int command, int change_type=CHANGE_NONE, + EDL *new_edl=0, int use_inout=0); + + Condition *input_lock, *output_lock; +// active command, stop command + TransportCommand *command, *stop_command; +// next command under construction, last sent command + TransportCommand *next_command, *sent_command; + // Render engine RenderEngine *render_engine; -// Used by label commands to get current position + int done; int is_playing_back; + int send_active; // General purpose debugging register int debug;