SourceXtractorPlusPlus 0.19.2
SourceXtractor++, the next generation SExtractor
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
BenchConvolution Class Reference
Inheritance diagram for BenchConvolution:
Inheritance graph
[legend]
Collaboration diagram for BenchConvolution:
Collaboration graph
[legend]

Public Member Functions

po::options_description defineSpecificProgramOptions () override
 
std::shared_ptr< VectorImage< SeFloat > > generateImage (int size)
 
Elements::ExitCode mainMethod (std::map< std::string, po::variable_value > &args) override
 
template<typename Convolution >
std::shared_ptr< VectorImage< SeFloat > > benchmark (std::shared_ptr< VectorImage< SeFloat > > &image, std::shared_ptr< VectorImage< SeFloat > > &kernel, int repeat, int measures)
 
void verifyResults (std::shared_ptr< VectorImage< SeFloat > > a, std::shared_ptr< VectorImage< SeFloat > > b)
 
- Public Member Functions inherited from Elements::Program
 Program ()=default
 
virtual ~Program ()
 
virtual OptionsDescription defineSpecificProgramOptions ()
 
virtual std::pair< OptionsDescription, PositionalOptionsDescriptiondefineProgramArguments ()
 
virtual ExitCode mainMethod (std::map< std::string, VariableValue > &args)=0
 

Private Attributes

std::default_random_engine random_generator
 
std::uniform_real_distribution< SeFloatrandom_dist {0, 1}
 

Additional Inherited Members

- Public Types inherited from Elements::Program
typedef boost::program_options::options_description options_description
 
typedef boost::program_options::positional_options_description positional_options_description
 
typedef boost::program_options::variable_value variable_value
 
typedef boost::program_options::variables_map variables_map
 
typedef options_description OptionsDescription
 
typedef positional_options_description PositionalOptionsDescription
 
typedef variable_value VariableValue
 
typedef variables_map VariablesMap
 
typedef Elements::ExitCode ExitCode
 
typedef Elements::Logging Logging
 

Detailed Description

Definition at line 53 of file BenchConvolution.cpp.

Member Function Documentation

◆ benchmark()

template<typename Convolution >
std::shared_ptr< VectorImage< SeFloat > > BenchConvolution::benchmark ( std::shared_ptr< VectorImage< SeFloat > > &  image,
std::shared_ptr< VectorImage< SeFloat > > &  kernel,
int  repeat,
int  measures 
)
inline

Definition at line 137 of file BenchConvolution.cpp.

References SourceXtractor::VectorImage< T >::create(), std::endl(), Elements::Logging::info(), logger, and m.

Here is the call graph for this function:

◆ defineSpecificProgramOptions()

po::options_description BenchConvolution::defineSpecificProgramOptions ( )
inlineoverridevirtual

Reimplemented from Elements::Program.

Definition at line 60 of file BenchConvolution.cpp.

◆ generateImage()

std::shared_ptr< VectorImage< SeFloat > > BenchConvolution::generateImage ( int  size)
inline

Definition at line 73 of file BenchConvolution.cpp.

References SourceXtractor::VectorImage< T >::create(), random_dist, random_generator, x, and y.

Referenced by mainMethod().

Here is the call graph for this function:

◆ mainMethod()

Elements::ExitCode BenchConvolution::mainMethod ( std::map< std::string, po::variable_value > &  args)
inlineoverride

Definition at line 83 of file BenchConvolution.cpp.

References std::endl(), generateImage(), Elements::Logging::info(), logger, and verifyResults().

Here is the call graph for this function:

◆ verifyResults()

void BenchConvolution::verifyResults ( std::shared_ptr< VectorImage< SeFloat > >  a,
std::shared_ptr< VectorImage< SeFloat > >  b 
)
inline

Definition at line 163 of file BenchConvolution.cpp.

References Elements::Logging::info(), SourceXtractor::isClose(), logger, Elements::Logging::warn(), x, and y.

Referenced by mainMethod().

Here is the call graph for this function:

Member Data Documentation

◆ random_dist

std::uniform_real_distribution<SeFloat> BenchConvolution::random_dist {0, 1}
private

Definition at line 56 of file BenchConvolution.cpp.

Referenced by generateImage().

◆ random_generator

std::default_random_engine BenchConvolution::random_generator
private

Definition at line 55 of file BenchConvolution.cpp.

Referenced by generateImage().


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