• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 
5 #ifndef STORAGE_LEVELDB_DB_BUILDER_H_
6 #define STORAGE_LEVELDB_DB_BUILDER_H_
7 
8 #include "leveldb/status.h"
9 
10 namespace leveldb {
11 
12 struct Options;
13 struct FileMetaData;
14 
15 class Env;
16 class Iterator;
17 class TableCache;
18 class VersionEdit;
19 
20 // Build a Table file from the contents of *iter.  The generated file
21 // will be named according to meta->number.  On success, the rest of
22 // *meta will be filled with metadata about the generated table.
23 // If no data is present in *iter, meta->file_size will be set to
24 // zero, and no Table file will be produced.
25 extern Status BuildTable(const std::string& dbname,
26                          Env* env,
27                          const Options& options,
28                          TableCache* table_cache,
29                          Iterator* iter,
30                          FileMetaData* meta);
31 
32 }  // namespace leveldb
33 
34 #endif  // STORAGE_LEVELDB_DB_BUILDER_H_
35