* Copyright 2001-2010, Haiku Inc. All rights reserved.
* This file may be used under the terms of the MIT License.
*
* Authors:
* Janito V. Ferreira Filho
*/
#ifndef REVOKEMANAGER_H
#define REVOKEMANAGER_H
#include "Journal.h"
struct JournalRevokeHeader;
class RevokeManager {
public:
RevokeManager(bool has64bits);
virtual ~RevokeManager() = 0;
virtual status_t Insert(uint32 block, uint32 commitID) = 0;
virtual status_t Remove(uint32 block) = 0;
virtual bool Lookup(uint32 block, uint32 commitID) = 0;
uint32 NumRevokes() { return fRevokeCount; }
status_t ScanRevokeBlock(JournalRevokeHeader* revokeBlock,
uint32 commitID);
protected:
uint32 fRevokeCount;
bool fHas64bits;
};
#endif