monotone

monotone Mtn Source Tree

Root/botan/buf_filt.h

1/*************************************************
2* Buffering Filter Header File *
3* (C) 1999-2007 The Botan Project *
4*************************************************/
5
6#ifndef BOTAN_BUFFERING_FILTER_H__
7#define BOTAN_BUFFERING_FILTER_H__
8
9#include <botan/filter.h>
10
11namespace Botan {
12
13/*************************************************
14* Buffering Filter *
15*************************************************/
16class Buffering_Filter : public Filter
17 {
18 public:
19 void write(const byte[], u32bit);
20 virtual void end_msg();
21 Buffering_Filter(u32bit, u32bit = 0);
22 virtual ~Buffering_Filter() {}
23 protected:
24 virtual void initial_block(const byte[]) {}
25 virtual void main_block(const byte[]) = 0;
26 virtual void final_block(const byte[], u32bit) = 0;
27 private:
28 const u32bit INITIAL_BLOCK_SIZE, BLOCK_SIZE;
29 SecureVector<byte> initial, block;
30 u32bit initial_block_pos, block_pos;
31 };
32
33}
34
35#endif

Archive Download this file

Branches

Tags

Quick Links:     www.monotone.ca    -     Downloads    -     Documentation    -     Wiki    -     Code Forge    -     Build Status