aitools::bighashmap::core::builder< T > Class Template Reference

#include <builder.hpp>

List of all members.

Public Types

typedef cmph_map< T >::key_type key_type
typedef cmph_map< T >::value_type value_type
typedef cmph_map< T >
::checksum_type 
checksum_type

Static Public Member Functions

static const bfs::path build (const bfs::path &input_dir, const bfs::path &output_dir, algorithm algo=algorithm::bdz)

Static Public Attributes

static const char key_value_delim = '\t'
static const std::string index_file_name

Private Types

typedef value::pair
< checksum_type, value_type
entry_type
typedef value::value_traits
< entry_type
entry_traits

Private Member Functions

 builder ()

Static Private Member Functions

static const bfs::path build_hashfunc (const bfs::path &key_file, algorithm algo=algorithm::bdz)
static bfs::path build_hashtable (const bfs::path &mph_file, const bfs::path &rec_file)
static const bfs::path build_map (const bfs::path &input_file, algorithm algo=algorithm::bdz)
static const bfs::path create_keyfile (const bfs::path &rec_file)
static const uint64_t get_record_count (const bfs::path &input_dir)
static const std::vector
< bfs::path > 
scatter (const bfs::path &input_dir, const bfs::path &output_dir)

Detailed Description

template<typename T>
class aitools::bighashmap::core::builder< T >

Definition at line 37 of file builder.hpp.


Member Typedef Documentation

Definition at line 43 of file builder.hpp.

template<typename T >
typedef value::value_traits<entry_type> aitools::bighashmap::core::builder< T >::entry_traits [private]

Definition at line 48 of file builder.hpp.

template<typename T >
typedef value::pair<checksum_type, value_type> aitools::bighashmap::core::builder< T >::entry_type [private]

Definition at line 47 of file builder.hpp.

template<typename T >
typedef cmph_map<T>::key_type aitools::bighashmap::core::builder< T >::key_type

Definition at line 41 of file builder.hpp.

template<typename T >
typedef cmph_map<T>::value_type aitools::bighashmap::core::builder< T >::value_type

Definition at line 42 of file builder.hpp.


Constructor & Destructor Documentation

template<typename T >
aitools::bighashmap::core::builder< T >::builder (  )  [private]

Member Function Documentation

template<typename T >
static const bfs::path aitools::bighashmap::core::builder< T >::build ( const bfs::path &  input_dir,
const bfs::path &  output_dir,
algorithm  algo = algorithm::bdz 
) [inline, static]
template<typename T >
static const bfs::path aitools::bighashmap::core::builder< T >::build_hashfunc ( const bfs::path &  key_file,
algorithm  algo = algorithm::bdz 
) [inline, static, private]

Generates a minimal perfect hash function from the given key file. Note that the entire key file will be loaded into memory.

Definition at line 104 of file builder.hpp.

References aitools::util::fclose(), aitools::util::fopen(), and aitools::util::throw_runtime_error().

Referenced by aitools::bighashmap::core::builder< T >::build_map().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename T >
static bfs::path aitools::bighashmap::core::builder< T >::build_hashtable ( const bfs::path &  mph_file,
const bfs::path &  rec_file 
) [inline, static, private]
template<typename T >
static const bfs::path aitools::bighashmap::core::builder< T >::build_map ( const bfs::path &  input_file,
algorithm  algo = algorithm::bdz 
) [inline, static, private]
template<typename T >
static const bfs::path aitools::bighashmap::core::builder< T >::create_keyfile ( const bfs::path &  rec_file  )  [inline, static, private]

Definition at line 203 of file builder.hpp.

References aitools::bighashmap::core::builder< T >::key_value_delim, and aitools::util::throw_runtime_error().

Referenced by aitools::bighashmap::core::builder< T >::build_map().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename T >
static const uint64_t aitools::bighashmap::core::builder< T >::get_record_count ( const bfs::path &  input_dir  )  [inline, static, private]

Definition at line 230 of file builder.hpp.

References aitools::util::throw_runtime_error().

Referenced by aitools::bighashmap::core::builder< T >::scatter().

Here is the call graph for this function:

Here is the caller graph for this function:

template<typename T >
static const std::vector<bfs::path> aitools::bighashmap::core::builder< T >::scatter ( const bfs::path &  input_dir,
const bfs::path &  output_dir 
) [inline, static, private]

Member Data Documentation

template<typename T >
const std::string aitools::bighashmap::core::builder< T >::index_file_name [inline, static]

Definition at line 54 of file builder.hpp.

Referenced by aitools::bighashmap::core::builder< T >::build().

template<typename T >
const char aitools::bighashmap::core::builder< T >::key_value_delim = '\t' [static]

The documentation for this class was generated from the following file:
Generated on Wed May 30 15:07:31 2012 by  doxygen 1.6.3