X-Git-Url: https://git.cinelerra-gg.org/git/?p=goodguy%2Fcinelerra.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Ftrack.h;h=f59e989804905f877a08a25ca1cad5bf5caf8edd;hp=5552feeb40f2d69e18e27368162e09fa25378417;hb=fbdd13b462256ed4f3b35dc114385fe0b0de0dcd;hpb=59e74f262d7b6be235f2bbfaac35ef4274f52dc9 diff --git a/cinelerra-5.1/cinelerra/track.h b/cinelerra-5.1/cinelerra/track.h index 5552feeb..f59e9898 100644 --- a/cinelerra-5.1/cinelerra/track.h +++ b/cinelerra-5.1/cinelerra/track.h @@ -57,7 +57,6 @@ class Track : public ListItem { public: Track(EDL *edl, Tracks *tracks); - Track(); virtual ~Track(); void create_objects(); @@ -71,6 +70,13 @@ public: void equivalent_output(Track *track, double *result); int get_mixer_id(); + void get_fauto_xyz(int fauto, float &x, float &y, float &z); + void set_fauto_xyz(int fauto, float x, float y, float z); + void get_projector(float &x, float &y, float &z); + void set_projector(float x, float y, float z); + void get_camera(float &x, float &y, float &z); + void set_camera(float x, float y, float z); + virtual void copy_from(Track *track); Track& operator=(Track& track); virtual PluginSet* new_plugins() { return 0; }; @@ -105,7 +111,7 @@ public: double edl_length); void shuffle_edits(double start, double end, int first_track); void reverse_edits(double start, double end, int first_track); - void align_edits(double start, double end, ArrayList *times); + void align_edits(double start, double end, Track *master_track); // Optimize editing void optimize(); int is_muted(int64_t position, int direction); // Test muting status @@ -139,7 +145,7 @@ public: // Called by playable tracks to test for playable server. // Descends the plugin tree without creating a virtual console. // Used by PlayableTracks::is_playable. - int is_synthesis(int64_t position, int direction); + int is_synthesis(int64_t position, int direction, int depth=0); // Used by PlayableTracks::is_playable // Returns 1 if the track is in the output boundaries. @@ -153,12 +159,12 @@ public: // align to frame boundary int64_t frame_align(int64_t position, int round); - virtual int copy_settings(Track *track, int do_title=1); + virtual int copy_settings(Track *track); void shift_keyframes(int64_t position, int64_t length); void shift_effects(int64_t position, int64_t length, int edit_autos, Edits *trim_edits); void change_plugins(SharedLocation &old_location, SharedLocation &new_location, int do_swap); void change_modules(int old_location, int new_location, int do_swap); - int plugin_exists(Plugin *plugin); + Plugin *plugin_exists(int plugin_id); EDL *edl; Tracks *tracks; @@ -170,6 +176,8 @@ public: // Vertical offset from top of timeline int y_pixel; +// Vertical height of the track asset + int data_h; int expand_view; int draw; // There is some debate on whether to expand gang from faders to @@ -179,6 +187,8 @@ public: char title[BCTEXTLEN]; int play; int record; +// mask enable bit flags + int masks; // Nudge in track units. Positive shifts track earlier in time. This way // the position variables only need to add the nudge. int64_t nudge;