Fixed initialisation of tf in file_open(). Without setting the memory to 0,
[cinelerra_cv/mob.git] / plugins / denoiseseltempavg / seltempavgwindow.h
blob246717c438b32b0fa53e4423d45b1354db670aae
1 #ifndef TIMEAVGWINDOW_H
2 #define TIMEAVGWINDOW_H
5 class SelTempAvgThread;
6 class SelTempAvgWindow;
8 class SelTempAvgParanoid;
9 class SelTempAvgNoSubtract;
10 class SelTempAvgStartKeyframe;
11 class SelTempAvgMask;
13 class SelTempAvgOffsetRadial;
14 class SelTempAvgMethodRadial;
16 class SelTempAvgSlider;
18 class SelTempAvgThreshSlider;
19 class SelTempAvgOffsetValue;
20 class SelTempAvgGainValue;
23 #include "guicast.h"
24 #include "mutex.h"
25 #include "seltempavg.h"
27 PLUGIN_THREAD_HEADER(SelTempAvgMain, SelTempAvgThread, SelTempAvgWindow)
33 enum {
34 AVG_RY,
35 AVG_GU,
36 AVG_BV,
37 STD_RY,
38 STD_GU,
39 STD_BV
42 enum {
43 MASK_RY,
44 MASK_GU,
45 MASK_BV
49 class SelTempAvgWindow : public BC_Window
51 public:
52 SelTempAvgWindow(SelTempAvgMain *client, int x, int y);
53 ~SelTempAvgWindow();
55 int create_objects();
56 int close_event();
58 SelTempAvgMain *client;
59 SelTempAvgSlider *total_frames;
61 SelTempAvgThreshSlider *avg_threshold_RY, *avg_threshold_GU, *avg_threshold_BV;
62 SelTempAvgThreshSlider *std_threshold_RY, *std_threshold_GU, *std_threshold_BV;
63 SelTempAvgMask *mask_RY, *mask_GU, *mask_BV;
65 SelTempAvgOffsetRadial *offset_fixed, *offset_restartmarker;
66 SelTempAvgMethodRadial *method_none, *method_seltempavg, *method_stddev, *method_average;
68 SelTempAvgParanoid *paranoid;
69 SelTempAvgNoSubtract *no_subtract;
70 SelTempAvgStartKeyframe *offset_restartmarker_keyframe;
71 BC_TextBox *offset_restartmarker_pos;
73 SelTempAvgOffsetValue *offset_fixed_value;
74 SelTempAvgGainValue *gain;
77 class SelTempAvgThreshSlider : public BC_TextBox
79 public:
80 SelTempAvgThreshSlider(SelTempAvgMain *client, int x, int y, int type, float curval);
81 ~SelTempAvgThreshSlider();
82 int handle_event();
83 int type;
84 SelTempAvgMain *client;
88 class SelTempAvgOffsetValue : public BC_TextBox
90 public:
91 SelTempAvgOffsetValue(SelTempAvgMain *client, int x, int y);
92 ~SelTempAvgOffsetValue();
93 int handle_event();
94 SelTempAvgMain *client;
98 class SelTempAvgGainValue : public BC_TextBox
100 public:
101 SelTempAvgGainValue(SelTempAvgMain *client, int x, int y);
102 ~SelTempAvgGainValue();
103 int handle_event();
104 SelTempAvgMain *client;
108 class SelTempAvgSlider : public BC_ISlider
110 public:
111 SelTempAvgSlider(SelTempAvgMain *client, int x, int y);
112 ~SelTempAvgSlider();
113 int handle_event();
115 SelTempAvgMain *client;
119 class SelTempAvgOffsetRadial : public BC_Radial
121 public:
122 SelTempAvgOffsetRadial(SelTempAvgMain *client, SelTempAvgWindow *gui, int x, int y, int type, char *caption);
123 int handle_event();
124 SelTempAvgMain *client;
125 SelTempAvgWindow *gui;
126 int type;
130 class SelTempAvgMethodRadial : public BC_Radial
132 public:
133 SelTempAvgMethodRadial(SelTempAvgMain *client, SelTempAvgWindow *gui, int x, int y, int type, char *caption);
134 int handle_event();
135 SelTempAvgMain *client;
136 SelTempAvgWindow *gui;
137 int type;
140 class SelTempAvgParanoid : public BC_CheckBox
142 public:
143 SelTempAvgParanoid(SelTempAvgMain *client, int x, int y);
144 int handle_event();
145 SelTempAvgMain *client;
148 class SelTempAvgNoSubtract : public BC_CheckBox
150 public:
151 SelTempAvgNoSubtract(SelTempAvgMain *client, int x, int y);
152 int handle_event();
153 SelTempAvgMain *client;
156 class SelTempAvgMask : public BC_CheckBox
158 public:
159 SelTempAvgMask(SelTempAvgMain *client, int x, int y,int type, int val);
160 int handle_event();
161 SelTempAvgMain *client;
162 int type;
166 class SelTempAvgStartKeyframe : public BC_CheckBox
168 public:
169 SelTempAvgStartKeyframe(SelTempAvgMain *client, int x, int y);
170 int handle_event();
171 SelTempAvgMain *client;
175 #endif