futriix-old/src/IStorage.h
John Sully a2bd45dbd3 Add the IStorage interface and wire it up
Former-commit-id: 898efbfc0c7038818083ea29fdd63cafa47721fb
2019-10-13 15:24:08 -04:00

15 lines
462 B
C++

#pragma once
#include <functional>
class IStorage
{
public:
typedef std::function<void(const char *, size_t, const void *, size_t)> callback;
virtual void insert(const char *key, size_t cchKey, void *data, size_t cb) = 0;
virtual void erase(const char *key, size_t cchKey) = 0;
virtual void retrieve(const char *key, size_t cchKey, bool fDelete, callback fn) = 0;
virtual size_t clear() = 0;
virtual void enumerate(callback fn) = 0;
};