SourceXtractorPlusPlus  0.13
Please provide a description of the project.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Private Attributes | List of all members
SourceXtractor::ProgressReporterFactory Class Reference

#include <ProgressReporterFactory.h>

Public Member Functions

virtual ~ProgressReporterFactory ()=default
 
 ProgressReporterFactory ()
 
void addOptions (boost::program_options::options_description &options) const
 
void configure (const std::map< std::string, boost::program_options::variable_value > &args)
 
std::shared_ptr< ProgressMediatorcreateProgressMediator (void) const
 

Private Attributes

std::chrono::steady_clock::duration m_min_interval
 
bool m_disable_progress_bar
 

Detailed Description

Abstracts away the creation of concrete ProgressReporters

Note
This class is not a Configurable because it needs to be started before the rest of the configurables. Otherwise, their logging can not be intercepted.

Definition at line 41 of file ProgressReporterFactory.h.

Constructor & Destructor Documentation

virtual SourceXtractor::ProgressReporterFactory::~ProgressReporterFactory ( )
virtualdefault
SourceXtractor::ProgressReporterFactory::ProgressReporterFactory ( )

Definition at line 28 of file ProgressReporterFactory.cpp.

Member Function Documentation

void SourceXtractor::ProgressReporterFactory::addOptions ( boost::program_options::options_description &  options) const

Definition at line 31 of file ProgressReporterFactory.cpp.

References std::string::c_str(), SourceXtractor::PROGRESS_BAR_DISABLED, and SourceXtractor::PROGRESS_MIN_INTERVAL.

Here is the call graph for this function:

void SourceXtractor::ProgressReporterFactory::configure ( const std::map< std::string, boost::program_options::variable_value > &  args)

Definition at line 38 of file ProgressReporterFactory.cpp.

References std::map< K, T >::at(), m_disable_progress_bar, m_min_interval, SourceXtractor::PROGRESS_BAR_DISABLED, and SourceXtractor::PROGRESS_MIN_INTERVAL.

Here is the call graph for this function:

std::shared_ptr< ProgressMediator > SourceXtractor::ProgressReporterFactory::createProgressMediator ( void  ) const

Definition at line 47 of file ProgressReporterFactory.cpp.

References SourceXtractor::ProgressNCurses::isTerminalCapable(), SourceXtractor::logger, m_disable_progress_bar, and m_min_interval.

Here is the call graph for this function:

Member Data Documentation

bool SourceXtractor::ProgressReporterFactory::m_disable_progress_bar
private

Definition at line 55 of file ProgressReporterFactory.h.

Referenced by configure(), and createProgressMediator().

std::chrono::steady_clock::duration SourceXtractor::ProgressReporterFactory::m_min_interval
private

Definition at line 54 of file ProgressReporterFactory.h.

Referenced by configure(), and createProgressMediator().


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