SourceXtractorPlusPlus  0.10
Please provide a description of the project.
Public Member Functions | Private Attributes | List of all members
BenchConvolution Class Reference
Inheritance diagram for BenchConvolution:
[legend]
Collaboration diagram for BenchConvolution:
[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 std::pair< boost::program_options::options_description, boost::program_options::positional_options_description > defineProgramArguments ()
 
virtual ExitCode mainMethod (std::map< std::string, boost::program_options::variable_value > &args)=0
 

Private Attributes

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

Detailed Description

Definition at line 70 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 154 of file BenchConvolution.cpp.

References SourceXtractor::VectorImage< T >::create(), std::endl(), Elements::Logging::info(), SourceXtractor::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 77 of file BenchConvolution.cpp.

◆ generateImage()

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

Definition at line 90 of file BenchConvolution.cpp.

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

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 100 of file BenchConvolution.cpp.

References std::endl(), Elements::Logging::info(), SourceXtractor::logger, and Elements::OK.

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 180 of file BenchConvolution.cpp.

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

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 73 of file BenchConvolution.cpp.

◆ random_generator

std::default_random_engine BenchConvolution::random_generator
private

Definition at line 72 of file BenchConvolution.cpp.


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