Credit Andrew - fix vorbis audio which was scratchy and ensure aging plugin does...
[goodguy/cinelerra.git] / cinelerra-5.1 / cinelerra / edl.h
index 8656c6080c2f95e44c70a90ef5e329c8582f4a62..5d08285bd5ddd2abf726c73c68618a55c009b6de 100644 (file)
@@ -25,6 +25,7 @@
 #include <stdio.h>
 #include <stdint.h>
 
+#include "arraylist.h"
 #include "asset.inc"
 #include "assets.inc"
 #include "autoconf.inc"
@@ -47,7 +48,7 @@
 #include "pluginserver.h"
 #include "preferences.inc"
 #include "recordlabel.inc"
-#include "sharedlocation.inc"
+#include "sharedlocation.h"
 #include "theme.inc"
 #include "tracks.inc"
 #include "vedit.inc"
@@ -196,8 +197,8 @@ public:
        int copy_assets(int copy_flags, double start, double end,
                FileXML *file, const char *output_path);
        void copy_indexables(EDL *edl);
-       EDL *new_nested_edl(EDL *edl, const char *path);
-       EDL *get_nested_edl();
+       EDL *new_nested_clip(EDL *edl, const char *path);
+       EDL *get_nested_edl(const char *path);
        EDL *create_nested_clip(EDL *nested);
        void create_nested(EDL *nested);
        void overwrite_clip(EDL *clip);
@@ -222,6 +223,9 @@ public:
                RecordLabels *labels = 0);
 // Insert the clip at a point in the EDL
        int insert_clips(ArrayList<EDL*> *new_edls, int load_mode, Track *first_track = 0);
+// copy/paste group of effects
+       int collect_effects(EDL *&group);
+       int insert_effects(EDL *group, Track *first_track=0);
 // Add a copy of EDL* to the clip array.  Returns the copy.
        EDL* add_clip(EDL *edl);
        EDL *selected_edits_to_clip(int packed,
@@ -302,4 +306,12 @@ public:
        EDL *parent_edl;
 };
 
+// remap plugin shares in collect/paste effects
+class edl_shared : public ArrayList<int> { public: int trk; };
+class edl_shared_list : public ArrayList<edl_shared> {};
+class edl_SharedLocations : public ArrayList<SharedLocation> {
+public:
+       void add(int trk, int plg);
+};
+
 #endif