Code refactor: add WorkTile struct for passing work to kernel.
[blender-staging.git] / intern / cycles / kernel / kernel_types.h
index 6c5b6ca3b2d5066fdc7153ec065a449f918e8a1d..bf3a288166613fd947963dfbe48a317e6ca65381 100644 (file)
@@ -1448,6 +1448,21 @@ enum RayState {
 #define PATCH_MAP_NODE_IS_LEAF (1u << 31)
 #define PATCH_MAP_NODE_INDEX_MASK (~(PATCH_MAP_NODE_IS_SET | PATCH_MAP_NODE_IS_LEAF))
 
+/* Work Tiles */
+
+typedef struct WorkTile {
+       uint x, y, w, h;
+
+       uint start_sample;
+       uint num_samples;
+
+       uint offset;
+       uint stride;
+
+       ccl_global float *buffer;
+       ccl_global uint *rng_state;
+} WorkTile;
+
 CCL_NAMESPACE_END
 
 #endif /*  __KERNEL_TYPES_H__ */