HEBench
hebench::cpp::WorkloadParams::SimpleSetIntersection Class Reference

#include <workload_params.hpp>

Inheritance diagram for hebench::cpp::WorkloadParams::SimpleSetIntersection:
Collaboration diagram for hebench::cpp::WorkloadParams::SimpleSetIntersection:

Public Types

enum  : std::size_t { Index_N , Index_M , Index_K , MinRequiredParameters }
 

Public Member Functions

std::uint64_t n () const
 Number of elements in set A. More...
 
std::uint64_t & n ()
 Number of elements in set A. More...
 
std::uint64_t m () const
 Number of elements in set B. More...
 
std::uint64_t & m ()
 Number of elements in set B. More...
 
std::uint64_t k () const
 Number of items per element. More...
 
std::uint64_t & k ()
 Number of items per element. More...
 
 SimpleSetIntersection (std::uint64_t _n=0, std::uint64_t _m=0, std::uint64_t _k=1)
 Initializes a new object to represent workload parameters for simple set intersection. More...
 
 SimpleSetIntersection (const std::vector< hebench::APIBridge::WorkloadParam > &w_params)
 Initializes workload parameters for simple set intersection from a list of existing workload parameters. More...
 
 SimpleSetIntersection (const hebench::APIBridge::WorkloadParams &w_params)
 Initializes workload parameters for simple set intersection from a list of existing workload parameters. More...
 
- Public Member Functions inherited from hebench::cpp::WorkloadParams::Common
 Common (std::size_t num_params=0)
 
 Common (const std::vector< hebench::APIBridge::WorkloadParam > &w_params)
 
 Common (const hebench::APIBridge::WorkloadParams &w_params)
 
virtual ~Common ()=default
 
template<typename T >
void add (const T &value, const std::string &name=std::string())
 Adds a new workload parameter to the list. More...
 
template<typename T >
void set (std::size_t index, const T &value, const std::string &name)
 Sets a new value for an existing workload parameter. More...
 
template<typename T >
void set (std::size_t index, const T &value)
 Sets a new value for an existing workload parameter. More...
 
template<typename T >
const T & get (std::size_t index) const
 Retrieves the value for an existing workload parameter. More...
 
const char * getName (std::size_t index) const
 
const std::vector< hebench::APIBridge::WorkloadParam > & getParams () const
 
template<>
void add (const double &value, const std::string &name)
 
template<>
void set (std::size_t index, const double &value, const std::string &name)
 
template<>
void set (std::size_t index, const double &value)
 
template<>
const double & get (std::size_t index) const
 

Additional Inherited Members

- Protected Attributes inherited from hebench::cpp::WorkloadParams::Common
std::vector< hebench::APIBridge::WorkloadParamm_w_params
 

Detailed Description

Definition at line 527 of file workload_params.hpp.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum : std::size_t
Enumerator
Index_N 
Index_M 
Index_K 
MinRequiredParameters 

Definition at line 530 of file workload_params.hpp.

Constructor & Destructor Documentation

◆ SimpleSetIntersection() [1/3]

hebench::cpp::WorkloadParams::SimpleSetIntersection::SimpleSetIntersection ( std::uint64_t  _n = 0,
std::uint64_t  _m = 0,
std::uint64_t  _k = 1 
)
inline

Initializes a new object to represent workload parameters for simple set intersection.

Parameters
[in]_nNumber of elements in set A.
[in]_mNumber of elements in set B.
[in]_kNumber of items per element.

Definition at line 571 of file workload_params.hpp.

◆ SimpleSetIntersection() [2/3]

hebench::cpp::WorkloadParams::SimpleSetIntersection::SimpleSetIntersection ( const std::vector< hebench::APIBridge::WorkloadParam > &  w_params)
inline

Initializes workload parameters for simple set intersection from a list of existing workload parameters.

Parameters
[in]w_paramsWorkload parameters from which to initialize. These will be copied to internal representation.
Exceptions
std::out_of_rangeif w_params does not have, at least, 2 parameters.
std::logic_errorif the type of any of the required parameters is incorrect.

Simple set intersection workload requires, at least, 2 parameters as specified by its definition. If any of the parameters is missing or in the wrong format, a std::exception or derived type is thrown.

Definition at line 591 of file workload_params.hpp.

◆ SimpleSetIntersection() [3/3]

hebench::cpp::WorkloadParams::SimpleSetIntersection::SimpleSetIntersection ( const hebench::APIBridge::WorkloadParams w_params)
inline

Initializes workload parameters for simple set intersection from a list of existing workload parameters.

Parameters
[in]w_paramsWorkload parameters from which to initialize. These will be copied to internal representation.
Exceptions
std::out_of_rangeif w_params does not have, at least, 2 parameters.
std::logic_errorif the type of any of the required parameters is incorrect.

Simple set intersection workload requires, at least, 2 parameters as specified by its definition. If any of the parameters is missing or in the wrong format, a std::exception or derived type is thrown.

Definition at line 608 of file workload_params.hpp.

Member Function Documentation

◆ k() [1/2]

std::uint64_t& hebench::cpp::WorkloadParams::SimpleSetIntersection::k ( )
inline

Number of items per element.

Definition at line 561 of file workload_params.hpp.

◆ k() [2/2]

std::uint64_t hebench::cpp::WorkloadParams::SimpleSetIntersection::k ( ) const
inline

Number of items per element.

Definition at line 557 of file workload_params.hpp.

◆ m() [1/2]

std::uint64_t& hebench::cpp::WorkloadParams::SimpleSetIntersection::m ( )
inline

Number of elements in set B.

Definition at line 553 of file workload_params.hpp.

◆ m() [2/2]

std::uint64_t hebench::cpp::WorkloadParams::SimpleSetIntersection::m ( ) const
inline

Number of elements in set B.

Definition at line 549 of file workload_params.hpp.

◆ n() [1/2]

std::uint64_t& hebench::cpp::WorkloadParams::SimpleSetIntersection::n ( )
inline

Number of elements in set A.

Definition at line 545 of file workload_params.hpp.

◆ n() [2/2]

std::uint64_t hebench::cpp::WorkloadParams::SimpleSetIntersection::n ( ) const
inline

Number of elements in set A.

Definition at line 541 of file workload_params.hpp.


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