// Copyright 2013 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef NET_DISK_CACHE_SIMPLE_SIMPLE_INDEX_FILE_H_ #define NET_DISK_CACHE_SIMPLE_SIMPLE_INDEX_FILE_H_ #include <stdint.h> #include <memory> #include <vector> #include "base/files/file_path.h" #include "base/gtest_prod_util.h" #include "base/pickle.h" #include "net/base/cache_type.h" #include "net/base/net_export.h" #include "net/disk_cache/simple/simple_backend_version.h" #include "net/disk_cache/simple/simple_index.h" namespace base { class SequencedTaskRunner; } namespace disk_cache { class BackendFileOperations; class BackendFileOperationsFactory; const uint64_t kSimpleIndexMagicNumber = …0x656e74657220796f); struct NET_EXPORT_PRIVATE SimpleIndexLoadResult { … }; // Simple Index File format is a pickle of IndexMetadata and EntryMetadata // objects. The file format is as follows: one instance of |IndexMetadata| // followed by |EntryMetadata| repeated |entry_count| times. To learn more about // the format see |SimpleIndexFile::Serialize()| and // |SimpleIndexFile::LoadFromDisk()|. // // The non-static methods must run on the source creation sequence. All the real // work is done in the static methods, which are run on the cache thread // or in worker threads. Synchronization between methods is the // responsibility of the caller. class NET_EXPORT_PRIVATE SimpleIndexFile { … }; } // namespace disk_cache #endif // NET_DISK_CACHE_SIMPLE_SIMPLE_INDEX_FILE_H_