8#ifndef BOTAN_PARALLEL_HASH_H_
9#define BOTAN_PARALLEL_HASH_H_
11#include <botan/hash.h>
24 void clear()
override;
25 std::string
name()
const override;
27 std::unique_ptr<HashFunction>
copy_state()
const override;
35 explicit Parallel(std::vector<std::unique_ptr<HashFunction>>& hashes);
42 void add_data(
const uint8_t[],
size_t)
override;
43 void final_result(uint8_t[])
override;
45 std::vector<std::unique_ptr<HashFunction>> m_hashes;
virtual size_t output_length() const =0
virtual HashFunction * clone() const =0
virtual std::unique_ptr< HashFunction > copy_state() const =0
virtual std::string name() const =0
Parallel(const Parallel &)=delete
Parallel & operator=(const Parallel &)=delete
int(* final)(unsigned char *, CTX *)
#define BOTAN_PUBLIC_API(maj, min)
#define BOTAN_FUTURE_INTERNAL_HEADER(hdr)