X-Git-Url: http://git.cinelerra-gg.org/git/?p=goodguy%2Fhistory.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fbatchrender.h;h=4a81520babf3ba1180863a4f58671504ac31ae05;hp=2791d0e43b7abac89e8c43f448f5118f2f2ffab3;hb=2e48b660e37eb5c661264d601211e16cb6cd6e89;hpb=29cc4023b50d6f7f9ab518978d8c9e839832b900 diff --git a/cinelerra-5.1/cinelerra/batchrender.h b/cinelerra-5.1/cinelerra/batchrender.h index 2791d0e4..4a81520b 100644 --- a/cinelerra-5.1/cinelerra/batchrender.h +++ b/cinelerra-5.1/cinelerra/batchrender.h @@ -36,10 +36,11 @@ #include "render.inc" #include "timeentry.h" -#define BATCHRENDER_COLUMNS 4 - - - +enum { + ENABLED_COL, LABELED_COL, FARMED_COL, + OUTPUT_COL, EDL_COL, ELAPSED_COL, + BATCHRENDER_COLUMNS +}; class BatchRenderMenuItem : public BC_MenuItem { @@ -54,19 +55,19 @@ public: class BatchRenderJob { public: - BatchRenderJob(Preferences *preferences); + BatchRenderJob(Preferences *preferences, int labeled=0, int farmed=-1); ~BatchRenderJob(); void copy_from(BatchRenderJob *src); void load(FileXML *file); void save(FileXML *file); - void fix_strategy(); + int get_strategy(); // Source EDL to render char edl_path[BCTEXTLEN]; // Destination file for output Asset *asset; - int strategy; + int labeled, farmed; int enabled; // Amount of time elapsed in last render operation double elapsed; @@ -92,11 +93,11 @@ public: int test_edl_files(); void calculate_dest_paths(ArrayList *paths, Preferences *preferences); - void reset(int warn=0); + void reset(const char *path=0); // Load batch rendering jobs void load_jobs(char *path, Preferences *preferences); // Not applicable to western civilizations - void save_jobs(char *path); + void save_jobs(char *path=0); void load_defaults(BC_Hash *defaults); void save_defaults(BC_Hash *defaults); // Create path for persistent storage functions @@ -118,8 +119,10 @@ public: void update_active(int number); void update_done(int number, int create_list, double elapsed_time); void move_batch(int src, int dst); + static void trap_hook(FILE *fp, void *vp); MWindow *mwindow; + char batch_path[BCTEXTLEN]; double current_start; double current_end; BatchRenderJob *default_job; @@ -128,14 +131,16 @@ public: Preferences *preferences; Render *render; BatchRenderGUI *gui; - int column_width[BATCHRENDER_COLUMNS]; + + static const char *column_titles[BATCHRENDER_COLUMNS]; + static int column_widths[BATCHRENDER_COLUMNS]; + int list_width[BATCHRENDER_COLUMNS]; // job being edited int current_job; // job being rendered int rendering_job; int is_rendering; int warn; - ArrayList *file_entries; }; @@ -195,6 +200,7 @@ public: BatchRenderThread *thread; BC_FileBox *gui; void run(); + void stop(); virtual int keypress_event(); Mutex *startup_lock; }; @@ -208,6 +214,7 @@ public: BatchRenderThread *thread; BC_FileBox *gui; void run(); + void stop(); virtual int keypress_event(); Mutex *startup_lock; }; @@ -273,6 +280,17 @@ public: MWindow *mwindow; }; +class BatchRenderUseFarm : public BC_CheckBox +{ +public: + BatchRenderUseFarm(BatchRenderThread *thread, int x, int y, int *output); + int handle_event(); + void update(int *output); + + BatchRenderThread *thread; + int *output; +}; + class BatchRenderGUI : public BC_Window { @@ -294,7 +312,9 @@ public: void button_enable(); void button_disable(); - ArrayList list_columns[BATCHRENDER_COLUMNS]; + ArrayList list_items[BATCHRENDER_COLUMNS]; + const char *list_titles[BATCHRENDER_COLUMNS]; + int list_width[BATCHRENDER_COLUMNS], list_columns; MWindow *mwindow; BatchRenderThread *thread; @@ -307,6 +327,7 @@ public: // BC_Title *status_text; // BC_ProgressBar *progress_bar; BC_Title *list_title; + BC_Title *batch_path; BatchRenderNew *new_batch; BatchRenderDelete *delete_batch; BatchRenderSaveList *savelist_batch; @@ -318,6 +339,7 @@ public: BatchRenderCancel *cancel_button; BatchRenderCurrentEDL *use_current_edl; BatchRenderUpdateEDL *update_selected_edl; + BatchRenderUseFarm *use_renderfarm; };