作者: 韩晨旭 10225101440 李畅 10225102463

30 line
988 B

  1. // Copyright (c) 2011 The LevelDB Authors. All rights reserved.
  2. // Use of this source code is governed by a BSD-style license that can be
  3. // found in the LICENSE file. See the AUTHORS file for names of contributors.
  4. #ifndef STORAGE_LEVELDB_DB_BUILDER_H_
  5. #define STORAGE_LEVELDB_DB_BUILDER_H_
  6. #include "leveldb/status.h"
  7. namespace leveldb {
  8. struct Options;
  9. struct FileMetaData;
  10. class Env;
  11. class Iterator;
  12. class TableCache;
  13. class VersionEdit;
  14. // Build a Table file from the contents of *iter. The generated file
  15. // will be named according to meta->number. On success, the rest of
  16. // *meta will be filled with metadata about the generated table.
  17. // If no data is present in *iter, meta->file_size will be set to
  18. // zero, and no Table file will be produced.
  19. Status BuildTable(const std::string& dbname, Env* env, const Options& options,
  20. TableCache* table_cache, Iterator* iter, FileMetaData* meta);
  21. } // namespace leveldb
  22. #endif // STORAGE_LEVELDB_DB_BUILDER_H_