monotone

monotone Mtn Source Tree

Root/botan/secqueue.h

1/*************************************************
2* SecureQueue Header File *
3* (C) 1999-2006 The Botan Project *
4*************************************************/
5
6#ifndef BOTAN_SECURE_QUEUE_H__
7#define BOTAN_SECURE_QUEUE_H__
8
9#include <botan/data_src.h>
10#include <botan/filter.h>
11
12namespace Botan {
13
14/*************************************************
15* SecureQueue *
16*************************************************/
17class SecureQueue : public Fanout_Filter, public DataSource
18 {
19 public:
20 void write(const byte[], u32bit);
21
22 u32bit read(byte[], u32bit);
23 u32bit peek(byte[], u32bit, u32bit = 0) const;
24
25 bool end_of_data() const;
26 u32bit size() const;
27 bool attachable() { return false; }
28
29 SecureQueue& operator=(const SecureQueue&);
30 SecureQueue();
31 SecureQueue(const SecureQueue&);
32 ~SecureQueue() { destroy(); }
33 private:
34 void destroy();
35 class SecureQueueNode* head;
36 class SecureQueueNode* tail;
37 };
38
39}
40
41#endif

Archive Download this file

Branches

Tags

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