Bitcoin
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
leveldb::Compaction Class Reference

#include <version_set.h>

Public Member Functions

 ~Compaction ()
 
int level () const
 
VersionEditedit ()
 
int num_input_files (int which) const
 
FileMetaDatainput (int which, int i) const
 
uint64_t MaxOutputFileSize () const
 
bool IsTrivialMove () const
 
void AddInputDeletions (VersionEdit *edit)
 
bool IsBaseLevelForKey (const Slice &user_key)
 
bool ShouldStopBefore (const Slice &internal_key)
 
void ReleaseInputs ()
 

Private Member Functions

 Compaction (const Options *options, int level)
 

Private Attributes

int level_
 
uint64_t max_output_file_size_
 
Versioninput_version_
 
VersionEdit edit_
 
std::vector< FileMetaData * > inputs_ [2]
 
std::vector< FileMetaData * > grandparents_
 
size_t grandparent_index_
 
bool seen_key_
 
int64_t overlapped_bytes_
 
size_t level_ptrs_ [config::kNumLevels]
 

Friends

class Version
 
class VersionSet
 

Constructor & Destructor Documentation

◆ ~Compaction()

leveldb::Compaction::~Compaction ( )

◆ Compaction()

leveldb::Compaction::Compaction ( const Options options,
int  level 
)
private

Member Function Documentation

◆ AddInputDeletions()

void leveldb::Compaction::AddInputDeletions ( VersionEdit edit)

◆ edit()

VersionEdit* leveldb::Compaction::edit ( )
inline

◆ input()

FileMetaData* leveldb::Compaction::input ( int  which,
int  i 
) const
inline

◆ IsBaseLevelForKey()

bool leveldb::Compaction::IsBaseLevelForKey ( const Slice user_key)

◆ IsTrivialMove()

bool leveldb::Compaction::IsTrivialMove ( ) const

◆ level()

int leveldb::Compaction::level ( ) const
inline

◆ MaxOutputFileSize()

uint64_t leveldb::Compaction::MaxOutputFileSize ( ) const
inline

◆ num_input_files()

int leveldb::Compaction::num_input_files ( int  which) const
inline

◆ ReleaseInputs()

void leveldb::Compaction::ReleaseInputs ( )

◆ ShouldStopBefore()

bool leveldb::Compaction::ShouldStopBefore ( const Slice internal_key)

Friends And Related Function Documentation

◆ Version

friend class Version
friend

◆ VersionSet

friend class VersionSet
friend

Member Data Documentation

◆ edit_

VersionEdit leveldb::Compaction::edit_
private

◆ grandparent_index_

size_t leveldb::Compaction::grandparent_index_
private

◆ grandparents_

std::vector<FileMetaData*> leveldb::Compaction::grandparents_
private

◆ input_version_

Version* leveldb::Compaction::input_version_
private

◆ inputs_

std::vector<FileMetaData*> leveldb::Compaction::inputs_[2]
private

◆ level_

int leveldb::Compaction::level_
private

◆ level_ptrs_

size_t leveldb::Compaction::level_ptrs_[config::kNumLevels]
private

◆ max_output_file_size_

uint64_t leveldb::Compaction::max_output_file_size_
private

◆ overlapped_bytes_

int64_t leveldb::Compaction::overlapped_bytes_
private

◆ seen_key_

bool leveldb::Compaction::seen_key_
private

The documentation for this class was generated from the following files: