Botan  1.10.9
par_hash.h
Go to the documentation of this file.
1 /*
2 * Parallel Hash
3 * (C) 1999-2007 Jack Lloyd
4 *
5 * Distributed under the terms of the Botan license
6 */
7 
8 #ifndef BOTAN_PARALLEL_HASH_H__
9 #define BOTAN_PARALLEL_HASH_H__
10 
11 #include <botan/hash.h>
12 #include <vector>
13 
14 namespace Botan {
15 
16 /**
17 * Parallel Hashes
18 */
19 class BOTAN_DLL Parallel : public HashFunction
20  {
21  public:
22  void clear();
23  std::string name() const;
24  HashFunction* clone() const;
25 
26  size_t output_length() const;
27 
28  /**
29  * @param hashes a set of hashes to compute in parallel
30  */
31  Parallel(const std::vector<HashFunction*>& hashes);
32  ~Parallel();
33  private:
34  void add_data(const byte[], size_t);
35  void final_result(byte[]);
36  std::vector<HashFunction*> hashes;
37  };
38 
39 }
40 
41 #endif
unsigned char byte
Definition: types.h:22