diff options
author | Jacques Lucke <jacques@blender.org> | 2020-07-10 13:53:50 +0300 |
---|---|---|
committer | Jacques Lucke <jacques@blender.org> | 2020-07-10 13:57:28 +0300 |
commit | f62204718bf8efc1661fd61cf85d24bc8268f763 (patch) | |
tree | 1b7aeea57b5435fbdab8d3d9bd1141275eaf30ef /source/blender/blenlib/BLI_float4x4.hh | |
parent | 8f6c0f224252f722c5cd64db85b425f33ad72182 (diff) |
BLI: initial hash function for Color4b and float4x4
Diffstat (limited to 'source/blender/blenlib/BLI_float4x4.hh')
-rw-r--r-- | source/blender/blenlib/BLI_float4x4.hh | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/source/blender/blenlib/BLI_float4x4.hh b/source/blender/blenlib/BLI_float4x4.hh index 1e9bd12b12b..ef83f9ffc19 100644 --- a/source/blender/blenlib/BLI_float4x4.hh +++ b/source/blender/blenlib/BLI_float4x4.hh @@ -108,6 +108,16 @@ struct float4x4 { interp_m4_m4m4(result, a.values, b.values, t); return result; } + + uint32_t hash() const + { + uint32_t h = 435109; + for (uint i = 0; i < 16; i++) { + float value = ((const float *)this)[i]; + h = h * 33 + (*(uint32_t *)&value); + } + return h; + } }; } // namespace blender |