diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2015-05-19 19:03:24 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2016-01-25 16:13:52 +0300 |
commit | e3e23f774697782424647d8a12792dbc768501ad (patch) | |
tree | 5c37c3e91aa2536edb2eb3a54a7ad051fbfb33fb /source/blender/imbuf/IMB_colormanagement.h | |
parent | 83c9109926677b6b6a75ccb36ae0017733e8c8a2 (diff) |
ImBuf: Make luminance calculation inlined
Title actually tells it all, it is rather simple function which totally makes
sense to be inlined.
This gives up to 5% of speedup when updating scopes for a large image.
Reviewers: campbellbarton
Differential Revision: https://developer.blender.org/D1310
Diffstat (limited to 'source/blender/imbuf/IMB_colormanagement.h')
-rw-r--r-- | source/blender/imbuf/IMB_colormanagement.h | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/source/blender/imbuf/IMB_colormanagement.h b/source/blender/imbuf/IMB_colormanagement.h index 59df8334099..ab822f1cd55 100644 --- a/source/blender/imbuf/IMB_colormanagement.h +++ b/source/blender/imbuf/IMB_colormanagement.h @@ -36,9 +36,11 @@ */ #include "BLI_sys_types.h" +#include "BLI_compiler_compat.h" #define BCM_CONFIG_FILE "config.ocio" + struct bContext; struct ColorManagedColorspaceSettings; struct ColorManagedDisplaySettings; @@ -67,8 +69,8 @@ void IMB_colormanagement_assign_rect_colorspace(struct ImBuf *ibuf, const char * const char *IMB_colormanagement_get_float_colorspace(struct ImBuf *ibuf); const char *IMB_colormanagement_get_rect_colorspace(struct ImBuf *ibuf); -float IMB_colormanagement_get_luminance(const float rgb[3]); -unsigned char IMB_colormanagement_get_luminance_byte(const unsigned char[3]); +BLI_INLINE float IMB_colormanagement_get_luminance(const float rgb[3]); +BLI_INLINE unsigned char IMB_colormanagement_get_luminance_byte(const unsigned char[3]); /* ** Color space transformation functions ** */ void IMB_colormanagement_transform(float *buffer, int width, int height, int channels, @@ -206,4 +208,6 @@ enum { COLOR_ROLE_DEFAULT_FLOAT, }; +#include "intern/colormanagement_inline.c" + #endif /* __IMB_COLORMANAGEMENT_H__ */ |