diff options
Diffstat (limited to 'source/blender/compositor/operations/COM_ReadBufferOperation.h')
-rw-r--r-- | source/blender/compositor/operations/COM_ReadBufferOperation.h | 69 |
1 files changed, 47 insertions, 22 deletions
diff --git a/source/blender/compositor/operations/COM_ReadBufferOperation.h b/source/blender/compositor/operations/COM_ReadBufferOperation.h index cd15bb12b28..fee6555c3a9 100644 --- a/source/blender/compositor/operations/COM_ReadBufferOperation.h +++ b/source/blender/compositor/operations/COM_ReadBufferOperation.h @@ -24,29 +24,54 @@ #include "COM_MemoryBuffer.h" class ReadBufferOperation : public NodeOperation { -private: - MemoryProxy *m_memoryProxy; - bool m_single_value; /* single value stored in buffer, copied from associated write operation */ - unsigned int m_offset; - MemoryBuffer *m_buffer; -public: - ReadBufferOperation(DataType datetype); - void setMemoryProxy(MemoryProxy *memoryProxy) { this->m_memoryProxy = memoryProxy; } - MemoryProxy *getMemoryProxy() { return this->m_memoryProxy; } - void determineResolution(unsigned int resolution[2], unsigned int preferredResolution[2]); + private: + MemoryProxy *m_memoryProxy; + bool m_single_value; /* single value stored in buffer, copied from associated write operation */ + unsigned int m_offset; + MemoryBuffer *m_buffer; - void *initializeTileData(rcti *rect); - void executePixelSampled(float output[4], float x, float y, PixelSampler sampler); - void executePixelExtend(float output[4], float x, float y, PixelSampler sampler, - MemoryBufferExtend extend_x, MemoryBufferExtend extend_y); - void executePixelFiltered(float output[4], float x, float y, float dx[2], float dy[2]); - bool isReadBufferOperation() const { return true; } - void setOffset(unsigned int offset) { this->m_offset = offset; } - unsigned int getOffset() const { return this->m_offset; } - bool determineDependingAreaOfInterest(rcti *input, ReadBufferOperation *readOperation, rcti *output); - MemoryBuffer *getInputMemoryBuffer(MemoryBuffer **memoryBuffers) { return memoryBuffers[this->m_offset]; } - void readResolutionFromWriteBuffer(); - void updateMemoryBuffer(); + public: + ReadBufferOperation(DataType datetype); + void setMemoryProxy(MemoryProxy *memoryProxy) + { + this->m_memoryProxy = memoryProxy; + } + MemoryProxy *getMemoryProxy() + { + return this->m_memoryProxy; + } + void determineResolution(unsigned int resolution[2], unsigned int preferredResolution[2]); + + void *initializeTileData(rcti *rect); + void executePixelSampled(float output[4], float x, float y, PixelSampler sampler); + void executePixelExtend(float output[4], + float x, + float y, + PixelSampler sampler, + MemoryBufferExtend extend_x, + MemoryBufferExtend extend_y); + void executePixelFiltered(float output[4], float x, float y, float dx[2], float dy[2]); + bool isReadBufferOperation() const + { + return true; + } + void setOffset(unsigned int offset) + { + this->m_offset = offset; + } + unsigned int getOffset() const + { + return this->m_offset; + } + bool determineDependingAreaOfInterest(rcti *input, + ReadBufferOperation *readOperation, + rcti *output); + MemoryBuffer *getInputMemoryBuffer(MemoryBuffer **memoryBuffers) + { + return memoryBuffers[this->m_offset]; + } + void readResolutionFromWriteBuffer(); + void updateMemoryBuffer(); }; #endif |