Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2012-07-13 00:10:41 +0400
committerCampbell Barton <ideasman42@gmail.com>2012-07-13 00:10:41 +0400
commit8ce53a2a984238aa371b28b44bb2598473a64875 (patch)
treec49847742f540da5dc049fe8dc1e57343d07388c /source/blender/blenkernel/BKE_mask.h
parent8809f23c8d1a035c574a75a3ee33da9f6bf04abd (diff)
new mask rasterizer written to take advantage of the compositors threading, mostly functional but disabled by default (still a little wip).
Diffstat (limited to 'source/blender/blenkernel/BKE_mask.h')
-rw-r--r--source/blender/blenkernel/BKE_mask.h21
1 files changed, 20 insertions, 1 deletions
diff --git a/source/blender/blenkernel/BKE_mask.h b/source/blender/blenkernel/BKE_mask.h
index 384bc327a81..50d8576dd91 100644
--- a/source/blender/blenkernel/BKE_mask.h
+++ b/source/blender/blenkernel/BKE_mask.h
@@ -64,6 +64,8 @@ void BKE_mask_layer_copy_list(struct ListBase *masklayers_new, struct ListBase *
/* splines */
struct MaskSpline *BKE_mask_spline_add(struct MaskLayer *masklay);
+int BKE_mask_spline_differentiate_calc_total(const struct MaskSpline *spline, const int resol);
+
float (*BKE_mask_spline_differentiate(struct MaskSpline *spline, int *tot_diff_point))[2];
float (*BKE_mask_spline_feather_differentiated_points(struct MaskSpline *spline, int *tot_feather_point))[2];
@@ -203,4 +205,21 @@ void BKE_mask_init_layers(Mask *mask, struct layer_init_data *mlayer_data, int w
#define MASKPOINT_SEL_HANDLE(p) { (p)->bezt.f1 |= SELECT; (p)->bezt.f3 |= SELECT; } (void)0
#define MASKPOINT_DESEL_HANDLE(p) { (p)->bezt.f1 &= ~SELECT; (p)->bezt.f3 &= ~SELECT; } (void)0
-#endif
+/* disable to test alternate rasterizer */
+#define USE_RASKTER
+
+/* mask_rasterize.c */
+#ifndef USE_RASKTER
+struct MaskRasterHandle;
+typedef struct MaskRasterHandle MaskRasterHandle;
+
+MaskRasterHandle *BLI_maskrasterize_handle_new(void);
+void BLI_maskrasterize_handle_free(MaskRasterHandle *mr_handle);
+void BLI_maskrasterize_handle_init(MaskRasterHandle *mr_handle, struct Mask *mask,
+ const int width, const int height,
+ const short do_aspect_correct, const short do_mask_aa,
+ const short do_feather);
+float BLI_maskrasterize_handle_sample(MaskRasterHandle *mr_handle, const float xy[2]);
+#endif /* USE_RASKTER */
+
+#endif /* __BKE_MASK_H__ */