X-Git-Url: https://git.cinelerra-gg.org/git/?p=goodguy%2Fcinelerra.git;a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Fscopewindow.h;fp=cinelerra-5.1%2Fcinelerra%2Fscopewindow.h;h=86f9efa91155147d2c94fc6988057ace0dd9d21a;hp=74201e460f4520a88ee50be2c531c6c3550fe304;hb=7ffa6954689f14a41a3bae7a0fdb3f2abeaa9679;hpb=6cf1b80d50c6b458241a0d43487fb8519c575c97 diff --git a/cinelerra-5.1/cinelerra/scopewindow.h b/cinelerra-5.1/cinelerra/scopewindow.h index 74201e46..86f9efa9 100644 --- a/cinelerra-5.1/cinelerra/scopewindow.h +++ b/cinelerra-5.1/cinelerra/scopewindow.h @@ -22,6 +22,7 @@ #define SCOPEWINDOW_H +#include "boxblur.inc" #include "guicast.h" #include "loadbalance.h" #include "mwindow.h" @@ -161,22 +162,61 @@ public: ScopeScopesOn *vect_on; }; -class ScopeWaveSlider : public BC_ISlider + +class ScopeGainReset : public BC_Button { public: - ScopeWaveSlider(ScopeGUI *gui, int x, int y, int w); + ScopeGainReset(ScopeGain *gain, int x, int y); + static int calculate_w(BC_Theme *theme); int handle_event(); - ScopeGUI *gui; + + ScopeGain *gain; }; -class ScopeVectSlider : public BC_ISlider +class ScopeGainSlider : public BC_ISlider { public: - ScopeVectSlider(ScopeGUI *gui, int x, int y, int w); + ScopeGainSlider(ScopeGain *gain, int x, int y, int w); + int handle_event(); + ScopeGain *gain; +}; + +class ScopeGain +{ +public: + ScopeGain(ScopeGUI *gui, int x, int y, int w, int *value); + ~ScopeGain(); + static int calculate_h(); + void create_objects(); + void reposition_window(int x, int y); + int handle_event(); + ScopeGUI *gui; + int x, y, w, *value; + int reset_w; + ScopeGainReset *reset; + ScopeGainSlider *slider; + + int get_x() { return x; } + int get_y() { return y; } + int get_w() { return w; } + int get_h() { return calculate_h(); } +}; + +class ScopeWaveSlider : public ScopeGain +{ +public: + ScopeWaveSlider(ScopeGUI *gui, int x, int y, int w); }; +class ScopeVectSlider : public ScopeGain +{ +public: + ScopeVectSlider(ScopeGUI *gui, int x, int y, int w); +}; + + class ScopeSmooth : public BC_CheckBox { public: @@ -242,45 +282,4 @@ public: int use_wave_gain, use_vect_gain; }; - -class BoxBlurPackage : public LoadPackage -{ -public: - BoxBlurPackage(); - int u1, u2; -}; - -class BoxBlurUnit : public LoadClient -{ -public: - BoxBlurUnit(BoxBlur*server); - template - void blurt_package(LoadPackage *package); - void process_package(LoadPackage *package); -}; - -class BoxBlur : public LoadServer -{ -public: - BoxBlur(int cpus); - virtual ~BoxBlur(); - void init_packages(); - LoadClient* new_client(); - LoadPackage* new_package(); - void process(VFrame *dst, VFrame *src, int uv, - int radius, int power, int comp); - void hblur(VFrame *dst, VFrame *src, - int radius, int power, int comp=-1); - void vblur(VFrame *dst, VFrame *src, - int radius, int power, int comp=-1); - void blur(VFrame *dst, VFrame *src, - int radius, int power, int comp=-1); - const uint8_t *src_data; - uint8_t *dst_data; - int src_ustep, dst_ustep; - int src_vstep, dst_vstep; - int radius, power; - int ulen, vlen, c0, c1; -}; - #endif