Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef __HASH_H__
00023 #define __HASH_H__
00024
00025 #include <cstddef>
00026 #include <stdint.h>
00027
00028 struct ATSHashBase
00029 {
00030 virtual void update(const void *, size_t) = 0;
00031 virtual void final(void) = 0;
00032 virtual void clear(void) = 0;
00033 virtual ~ATSHashBase();
00034 };
00035
00036 struct ATSHash:ATSHashBase
00037 {
00038 virtual const void *get(void) const = 0;
00039 virtual size_t size(void) const = 0;
00040 virtual bool operator==(const ATSHash &) const;
00041 };
00042
00043 struct ATSHash32:ATSHashBase
00044 {
00045 virtual uint32_t get(void) const = 0;
00046 virtual bool operator==(const ATSHash32 &) const;
00047 };
00048
00049 struct ATSHash64:ATSHashBase
00050 {
00051 virtual uint64_t get(void) const = 0;
00052 virtual bool operator==(const ATSHash64 &) const;
00053 };
00054
00055 #endif