| // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | |
| // Use of this source code is governed by a BSD-style license that can be | |
| // found in the LICENSE file. | |
| // See net/disk_cache/disk_cache.h for the public interface of the cache. | |
| #ifndef NET_DISK_CACHE_FILE_BLOCK_H__ | |
| #define NET_DISK_CACHE_FILE_BLOCK_H__ | |
| namespace disk_cache { | |
| // This interface exposes common functionality for a single block of data | |
| // stored on a file-block, regardless of the real type or size of the block. | |
| // Used to simplify loading / storing the block from disk. | |
| class FileBlock { | |
| public: | |
| virtual ~FileBlock() {} | |
| // Returns a pointer to the actual data. | |
| virtual void* buffer() const = 0; | |
| // Returns the size of the block; | |
| virtual size_t size() const = 0; | |
| // Returns the file offset of this block. | |
| virtual int offset() const = 0; | |
| }; | |
| } // namespace disk_cache | |
| #endif // NET_DISK_CACHE_FILE_BLOCK_H__ |