2 #include "loadbalance.h"
7 class BoxBlurPackage : public LoadPackage
14 class BoxBlurUnit : public LoadClient
17 BoxBlurUnit(BoxBlur*server);
18 template<class dst_t, class src_t>
19 void blurt_package(LoadPackage *package);
20 void process_package(LoadPackage *package);
23 class BoxBlur : public LoadServer
29 LoadClient* new_client();
30 LoadPackage* new_package();
31 void process(VFrame *dst, VFrame *src, int uv,
32 int radius, int power, int comp);
33 int init_box(VFrame *dst, int x, int y, int w, int h);
34 void hblur(VFrame *dst, VFrame *src, int radius, int power, int comp=-1);
35 void hblur(VFrame *dst, VFrame *src, int radius, int power, int comp,
36 int x, int y, int w, int h);
37 void vblur(VFrame *dst, VFrame *src, int radius, int power, int comp=-1);
38 void vblur(VFrame *dst, VFrame *src, int radius, int power, int comp,
39 int x, int y, int w, int h);
40 void blur(VFrame *dst, VFrame *src, int radius, int power, int comp=-1);
41 void blur(VFrame *dst, VFrame *src, int radius, int power, int comp,
42 int x, int y, int w, int h);
44 const uint8_t *src_data;
46 int src_ustep, dst_ustep;
47 int src_vstep, dst_vstep;
48 int radius, power, uv;
50 int ulen, vlen, c0, c1;