diff options
author | David Robillard <d@drobilla.net> | 2020-09-26 10:54:19 +0200 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2020-09-26 10:54:19 +0200 |
commit | a433992d150f22c2fdff2c13801a74b31b726b55 (patch) | |
tree | 43a8561600e702ae3469d681b7ec528b3b3caedd /src/zix/digest.h | |
parent | 81e138633076c2d7ef7e1691845757208d02f478 (diff) | |
download | sord-a433992d150f22c2fdff2c13801a74b31b726b55.tar.gz sord-a433992d150f22c2fdff2c13801a74b31b726b55.tar.bz2 sord-a433992d150f22c2fdff2c13801a74b31b726b55.zip |
Update zix
Diffstat (limited to 'src/zix/digest.h')
-rw-r--r-- | src/zix/digest.h | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/src/zix/digest.h b/src/zix/digest.h index 264c918..16ba9b9 100644 --- a/src/zix/digest.h +++ b/src/zix/digest.h @@ -1,5 +1,5 @@ /* - Copyright 2012 David Robillard <http://drobilla.net> + Copyright 2012-2020 David Robillard <http://drobilla.net> Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above @@ -26,12 +26,36 @@ extern "C" { #endif +/** + Return an initial empty digest value. +*/ ZIX_API uint32_t zix_digest_start(void); +/** + Update `hash` to include `buf`, a buffer of `len` bytes. + + This can be used for any size or alignment. +*/ ZIX_API uint32_t zix_digest_add(uint32_t hash, const void* buf, size_t len); +/** + Update `hash` to include `buf`, a 64-bit aligned buffer of `len` bytes. + + Both `buf` and `len` must be evenly divisible by 8 (64 bits). +*/ +ZIX_API uint32_t +zix_digest_add_64(uint32_t hash, const void* buf, size_t len); + +/** + Update `hash` to include `ptr`. + + This hashes the value of the pointer itself, and does not dereference `ptr`. +*/ +ZIX_API uint32_t +zix_digest_add_ptr(uint32_t hash, const void* ptr); + #ifdef __cplusplus } /* extern "C" */ #endif |