1 #ifndef DEINTERWINDOW_H
2 #define DEINTERWINDOW_H
5 class DeInterlaceThread
;
6 class DeInterlaceWindow
;
10 #include "deinterlace.h"
11 #include "pluginclient.h"
13 PLUGIN_THREAD_HEADER(DeInterlaceMain
, DeInterlaceThread
, DeInterlaceWindow
);
15 class DeInterlaceOption
;
16 class DeInterlaceAdaptive
;
17 class DeInterlaceThreshold
;
19 class DeInterlaceWindow
: public BC_Window
22 DeInterlaceWindow(DeInterlaceMain
*client
, int x
, int y
);
27 int set_mode(int mode
, int recursive
);
28 void get_status_string(char *string
, int changed_rows
);
30 DeInterlaceMain
*client
;
31 DeInterlaceOption
*odd_fields
;
32 DeInterlaceOption
*even_fields
;
33 DeInterlaceOption
*average_fields
;
34 DeInterlaceOption
*swap_odd_fields
;
35 DeInterlaceOption
*swap_even_fields
;
36 DeInterlaceOption
*temporalswap_top_fields
;
37 DeInterlaceOption
*temporalswap_bottom_fields
;
38 DeInterlaceOption
*avg_even
;
39 DeInterlaceOption
*avg_odd
;
40 DeInterlaceOption
*none
;
41 DeInterlaceAdaptive
*adaptive
;
42 DeInterlaceThreshold
*threshold
;
46 class DeInterlaceOption
: public BC_Radial
49 DeInterlaceOption(DeInterlaceMain
*client
,
50 DeInterlaceWindow
*window
,
58 DeInterlaceMain
*client
;
59 DeInterlaceWindow
*window
;
63 class DeInterlaceAdaptive
: public BC_CheckBox
66 DeInterlaceAdaptive(DeInterlaceMain
*client
, int x
, int y
);
68 DeInterlaceMain
*client
;
71 class DeInterlaceThreshold
: public BC_IPot
74 DeInterlaceThreshold(DeInterlaceMain
*client
, int x
, int y
);
76 DeInterlaceMain
*client
;