Thrill  0.1
core.hpp File Reference
#include <sstream>
#include <string>
#include <utility>
#include <vector>
+ Include dependency graph for core.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  Logger
 LOG and sLOG for development and debugging. More...
 
class  LoggerCollectOutput
 Class to hook logger output in the local thread. More...
 
class  LoggerFormatter< AnyType, Enable >
 template class for formatting. contains a print() method. More...
 
class  LoggerFormatter< AnyType >
 
class  LoggerFormatter< std::pair< A, B > >
 
class  LoggerFormatter< std::vector< T, A > >
 
class  LoggerOutputHook
 Abstract class to implement output hooks for logging. More...
 
class  LoggerPrefixHook
 Abstract class to implement prefix output hooks for logging. More...
 
class  LoggerVoidify
 
class  SpacingLogger
 A logging class which outputs spaces between elements pushed via operator<<. More...
 

Namespaces

 tlx
 

Macros

#define TLX_LOG   TLX_LOGC(debug)
 Default logging method: output if the local debug variable is true. More...
 
#define TLX_LOG0   TLX_LOGC(false)
 Override default output: never or always output log. More...
 
#define TLX_LOG1   TLX_LOGC(true)
 
#define TLX_LOGC(cond)   !(cond) ? (void)0 : ::tlx::LoggerVoidify() & ::tlx::Logger()
 Explicitly specify the condition for logging. More...
 
#define TLX_sLOG   TLX_sLOGC(debug)
 Default logging method: output if the local debug variable is true. More...
 
#define TLX_sLOG0   TLX_sLOGC(false)
 Override default output: never or always output log. More...
 
#define TLX_sLOG1   TLX_sLOGC(true)
 
#define TLX_sLOGC(cond)   !(cond) ? (void)0 : ::tlx::LoggerVoidify() & ::tlx::SpacingLogger()
 Explicitly specify the condition for logging. More...
 

Functions

LoggerOutputHook * set_logger_output_hook (LoggerOutputHook *hook)
 
LoggerPrefixHook * set_logger_prefix_hook (LoggerPrefixHook *hook)
 
LoggerOutputHook * set_logger_to_stderr ()
 

Macro Definition Documentation

◆ TLX_LOG

◆ TLX_LOG0

#define TLX_LOG0   TLX_LOGC(false)

◆ TLX_LOG1

#define TLX_LOG1   TLX_LOGC(true)

Definition at line 145 of file core.hpp.

Referenced by ufs_file_base::_after_open(), MultiTimer::add(), request_queue_impl_1q::add_request(), request_queue_impl_qwqr::add_request(), foxxll::aligned_alloc(), block_manager::block_manager(), request_queue_impl_1q::cancel_request(), request_queue_impl_qwqr::cancel_request(), request::check_alignment(), request::check_nref_failed(), StringSetBase< StringSuffixSet, StringSuffixSetTraits >::check_order(), ufs_file_base::close_remove(), disk_block_allocator::deallocation_error(), block_scheduler_algorithm_offline_lru_prefetching< SwappableBlockType >::deinit(), block_scheduler_algorithm_offline_lru_prefetching< SwappableBlockType >::deinitialize(), memory_file::discard(), fileperblock_file< base_file_type >::discard(), disk_block_allocator::dump(), fileperblock_file< base_file_type >::export_files(), block_scheduler_algorithm_offline_lru_prefetching< SwappableBlockType >::give_up(), config::initialize(), config::load_default_config(), disk_block_allocator::new_blocks(), StringSetBase< StringSuffixSet, StringSuffixSetTraits >::print(), UPtrStdStringSet::print(), block_scheduler_algorithm_offline_lfd< SwappableBlockType >::release(), scoped_print_iostats::report(), thrill::api::RunCheckUnlinkBinary(), scoped_print_iostats::scoped_print_iostats(), scoped_print_timer::scoped_print_timer(), MultiTimer::start(), ufs_file_base::ufs_file_base(), ufs_file_base::unlink(), stats::wait_finished(), block_scheduler< SwappableBlockType >::~block_scheduler(), block_scheduler_algorithm_offline_lfd< SwappableBlockType >::~block_scheduler_algorithm_offline_lfd(), block_scheduler_algorithm_offline_lru_prefetching< SwappableBlockType >::~block_scheduler_algorithm_offline_lru_prefetching(), block_scheduler_algorithm_online_lru< SwappableBlockType >::~block_scheduler_algorithm_online_lru(), block_scheduler_algorithm_simulation< SwappableBlockType >::~block_scheduler_algorithm_simulation(), config::~config(), file::~file(), and scoped_print_timer::~scoped_print_timer().

◆ TLX_LOGC

#define TLX_LOGC (   cond)    !(cond) ? (void)0 : ::tlx::LoggerVoidify() & ::tlx::Logger()

Explicitly specify the condition for logging.

Definition at line 137 of file core.hpp.

Referenced by add_filler< mng_local::block_w_info< Type, RawSize, NRef, MetaInfoType >, RawSize - sizeof(mng_local::block_w_info< Type, RawSize, NRef, MetaInfoType >)>::add_filler(), add_filler< BaseType, 0 >::add_filler(), foxxll::aligned_alloc(), foxxll::aligned_dealloc(), block_w_bids< Type,((RawSize - sizeof(BID< RawSize >) *NBids)/sizeof(Type)), RawSize, NBids >::block_w_bids(), block_w_bids< Type, Size, RawSize, 0 >::block_w_bids(), block_w_info< Type, RawSize, NRef, MetaInfoType >::block_w_info(), block_w_info< Type, RawSize, NBids, void >::block_w_info(), PS5SmallsortJob< Context, StringPtr, BktSizeType >::SeqSampleSortStep::calculate_lcp(), PS5BigSortStep< Context, StringPtr >::count(), PS5BigSortStep< Context, StringPtr >::count_finished(), block_manager::delete_block(), PS5BigSortStep< Context, StringPtr >::distribute(), PS5BigSortStep< Context, StringPtr >::distribute_finished(), element_block< Type, Size >::element_block(), filler_struct< FillSize >::filler_struct(), filler_struct< 0 >::filler_struct(), PS5SmallsortJob< Context, StringPtr, BktSizeType >::mkqs_free_work(), PS5SmallsortJob< Context, StringPtr, BktSizeType >::MKQSStep::MKQSStep(), block_manager::new_blocks(), typed_block< RawSize, Type, NRef, MetaInfoType >::operator new(), typed_block< RawSize, Type, NRef, MetaInfoType >::operator new[](), tlx::sort_strings_detail::parallel_sample_sort_base(), tlx::sort_strings_detail::ps5_sample_sort_lcp(), PS5BigSortStep< Context, StringPtr >::PS5BigSortStep(), PS5SmallsortJob< Context, StringPtr, BktSizeType >::PS5SmallsortJob(), typed_block< RawSize, Type, NRef, MetaInfoType >::read(), SSTreeBuilderPreAndLevelOrder< key_type, num_splitters >::recurse(), SSTreeBuilderLevelOrder< key_type, num_splitters >::recurse(), PS5SmallsortJob< Context, StringPtr, BktSizeType >::run(), PS5BigSortStep< Context, StringPtr >::sample(), PS5SmallsortJob< Context, StringPtr, BktSizeType >::sample_sort_free_work(), PS5SmallsortJob< Context, StringPtr, BktSizeType >::sort_mkqs_cache(), PS5SmallsortJob< Context, StringPtr, BktSizeType >::sort_sample_sort(), PS5SmallsortJob< Context, StringPtr, BktSizeType >::substep_all_done(), PS5BigSortStep< Context, StringPtr >::substep_all_done(), typed_block< RawSize, Type, NRef, MetaInfoType >::typed_block(), typed_block< RawSize, Type, NRef, MetaInfoType >::write(), and typed_block< RawSize, Type, NRef, MetaInfoType >::~typed_block().

◆ TLX_sLOG

#define TLX_sLOG   TLX_sLOGC(debug)

Default logging method: output if the local debug variable is true.

Definition at line 152 of file core.hpp.

◆ TLX_sLOG0

#define TLX_sLOG0   TLX_sLOGC(false)

Override default output: never or always output log.

Definition at line 155 of file core.hpp.

◆ TLX_sLOG1

#define TLX_sLOG1   TLX_sLOGC(true)

Definition at line 156 of file core.hpp.

◆ TLX_sLOGC

#define TLX_sLOGC (   cond)    !(cond) ? (void)0 : ::tlx::LoggerVoidify() & ::tlx::SpacingLogger()

Explicitly specify the condition for logging.

Definition at line 148 of file core.hpp.