SourceXtractorPlusPlus  0.15
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< 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(), 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 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(), 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 83 of file BenchConvolution.cpp.

References std::endl(), 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 163 of file BenchConvolution.cpp.

References SourceXtractor::isClose(), SourceXtractor::logger, 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 56 of file BenchConvolution.cpp.

◆ random_generator

std::default_random_engine BenchConvolution::random_generator
private

Definition at line 55 of file BenchConvolution.cpp.


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