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:
authorJeroen Bakker <j.bakker@atmind.nl>2012-06-13 16:34:56 +0400
committerJeroen Bakker <j.bakker@atmind.nl>2012-06-13 16:34:56 +0400
commitbe1b5f82cee09041fdee355697841ee92b31ef70 (patch)
tree7032f52aaffb862c228d92a476dc9a0e00261ef1 /source/blender/compositor/operations/COM_GlareBaseOperation.h
parent4ba456d1754c29b488b8304c8546af45078e8536 (diff)
* optimized threading
* break out with glare node * Added OpenCL kernels compatible with AMD still need some testing.
Diffstat (limited to 'source/blender/compositor/operations/COM_GlareBaseOperation.h')
-rw-r--r--source/blender/compositor/operations/COM_GlareBaseOperation.h18
1 files changed, 5 insertions, 13 deletions
diff --git a/source/blender/compositor/operations/COM_GlareBaseOperation.h b/source/blender/compositor/operations/COM_GlareBaseOperation.h
index 2fa8afc9c4c..d79f449f426 100644
--- a/source/blender/compositor/operations/COM_GlareBaseOperation.h
+++ b/source/blender/compositor/operations/COM_GlareBaseOperation.h
@@ -22,7 +22,8 @@
#ifndef _COM_GlareBaseOperation_h
#define _COM_GlareBaseOperation_h
-#include "COM_NodeOperation.h"
+
+#include "COM_SingleThreadedNodeOperation.h"
#include "DNA_node_types.h"
@@ -55,7 +56,7 @@ typedef float fRGB[4];
} (void)0
-class GlareBaseOperation : public NodeOperation {
+class GlareBaseOperation : public SingleThreadedNodeOperation {
private:
/**
* @brief Cached reference to the inputProgram
@@ -66,16 +67,7 @@ private:
* @brief settings of the glare node.
*/
NodeGlare * settings;
-
- float *cachedInstance;
-
public:
-
- /**
- * the inner loop of this program
- */
- void executePixel(float *color, int x, int y, MemoryBuffer *inputBuffers[], void *data);
-
/**
* Initialize the execution
*/
@@ -86,15 +78,15 @@ public:
*/
void deinitExecution();
- void *initializeTileData(rcti *rect, MemoryBuffer **memoryBuffers);
-
void setGlareSettings(NodeGlare * settings) {this->settings = settings;}
bool determineDependingAreaOfInterest(rcti *input, ReadBufferOperation *readOperation, rcti *output);
+
protected:
GlareBaseOperation();
virtual void generateGlare(float *data, MemoryBuffer *inputTile, NodeGlare *settings) = 0;
+ MemoryBuffer *createMemoryBuffer(rcti *rect, MemoryBuffer **memoryBuffers);
};
#endif