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:
Diffstat (limited to 'source/blender/compositor/operations/COM_KeyingScreenOperation.h')
-rw-r--r--source/blender/compositor/operations/COM_KeyingScreenOperation.h90
1 files changed, 49 insertions, 41 deletions
diff --git a/source/blender/compositor/operations/COM_KeyingScreenOperation.h b/source/blender/compositor/operations/COM_KeyingScreenOperation.h
index e11905fbfac..860a358e79d 100644
--- a/source/blender/compositor/operations/COM_KeyingScreenOperation.h
+++ b/source/blender/compositor/operations/COM_KeyingScreenOperation.h
@@ -16,7 +16,6 @@
* Copyright 2012, Blender Foundation.
*/
-
#ifndef __COM_KEYINGSCREENOPERATION_H__
#define __COM_KEYINGSCREENOPERATION_H__
@@ -30,52 +29,61 @@
#include "BLI_string.h"
extern "C" {
-# include "BLI_voronoi_2d.h"
+#include "BLI_voronoi_2d.h"
}
/**
* Class with implementation of green screen gradient rasterization
*/
class KeyingScreenOperation : public NodeOperation {
-protected:
- typedef struct TriangulationData {
- VoronoiTriangulationPoint *triangulated_points;
- int (*triangles)[3];
- int triangulated_points_total, triangles_total;
- rcti *triangles_AABB;
- } TriangulationData;
-
- typedef struct TileData {
- int *triangles;
- int triangles_total;
- } TileData;
-
- MovieClip *m_movieClip;
- int m_framenumber;
- TriangulationData *m_cachedTriangulation;
- char m_trackingObject[64];
-
- /**
- * Determine the output resolution. The resolution is retrieved from the Renderer
- */
- void determineResolution(unsigned int resolution[2], unsigned int preferredResolution[2]);
-
- TriangulationData *buildVoronoiTriangulation();
-
-public:
- KeyingScreenOperation();
-
- void initExecution();
- void deinitExecution();
-
- void *initializeTileData(rcti *rect);
- void deinitializeTileData(rcti *rect, void *data);
-
- void setMovieClip(MovieClip *clip) {this->m_movieClip = clip;}
- void setTrackingObject(const char *object) { BLI_strncpy(this->m_trackingObject, object, sizeof(this->m_trackingObject)); }
- void setFramenumber(int framenumber) {this->m_framenumber = framenumber;}
-
- void executePixel(float output[4], int x, int y, void *data);
+ protected:
+ typedef struct TriangulationData {
+ VoronoiTriangulationPoint *triangulated_points;
+ int (*triangles)[3];
+ int triangulated_points_total, triangles_total;
+ rcti *triangles_AABB;
+ } TriangulationData;
+
+ typedef struct TileData {
+ int *triangles;
+ int triangles_total;
+ } TileData;
+
+ MovieClip *m_movieClip;
+ int m_framenumber;
+ TriangulationData *m_cachedTriangulation;
+ char m_trackingObject[64];
+
+ /**
+ * Determine the output resolution. The resolution is retrieved from the Renderer
+ */
+ void determineResolution(unsigned int resolution[2], unsigned int preferredResolution[2]);
+
+ TriangulationData *buildVoronoiTriangulation();
+
+ public:
+ KeyingScreenOperation();
+
+ void initExecution();
+ void deinitExecution();
+
+ void *initializeTileData(rcti *rect);
+ void deinitializeTileData(rcti *rect, void *data);
+
+ void setMovieClip(MovieClip *clip)
+ {
+ this->m_movieClip = clip;
+ }
+ void setTrackingObject(const char *object)
+ {
+ BLI_strncpy(this->m_trackingObject, object, sizeof(this->m_trackingObject));
+ }
+ void setFramenumber(int framenumber)
+ {
+ this->m_framenumber = framenumber;
+ }
+
+ void executePixel(float output[4], int x, int y, void *data);
};
#endif