#ifndef _SNIFFER_PATTERN_LIST_H
#define _SNIFFER_PATTERN_LIST_H
#include <vector>
#include "DisjList.h"
#include "Range.h"
namespace BPrivate {
namespace Storage {
namespace Sniffer {
class Err;
class Pattern;
class PatternList : public DisjList {
public:
PatternList(Range range);
virtual ~PatternList();
status_t InitCheck() const;
Err* GetErr() const;
virtual bool Sniff(const Data& data) const;
virtual ssize_t BytesNeeded() const;
void Add(Pattern *pattern);
private:
std::vector<Pattern*> fList;
Range fRange;
};
};
};
};
#endif