1 #ifndef MHO_ExtremaSearch_HH__
2 #define MHO_ExtremaSearch_HH__
95 template<
typename XCheckType =
typename XArgType::value_type >
96 typename std::enable_if< std::is_floating_point< XCheckType >::value,
void >::type Search(
const XArgType* in)
98 using fp_value_type =
typename XArgType::value_type;
101 fMax = std::numeric_limits< fp_value_type >::lowest();
104 auto bit = in->cbegin();
105 auto eit = in->cend();
107 for(
auto it = bit; it != eit; it++)
132 template<
typename XCheckType =
typename XArgType::value_type >
133 typename std::enable_if< is_complex< XCheckType >::value,
void >::type Search(
const XArgType* in)
135 using fp_value_type =
typename XArgType::value_type::value_type;
138 fMax = std::numeric_limits< fp_value_type >::lowest();
141 auto bit = in->cbegin();
142 auto eit = in->cend();
144 for(
auto it = bit; it != eit; it++)
146 value = std::abs(*it);
163 std::size_t fMaxLocation;
164 std::size_t fMinLocation;
Class MHO_ExtremaSearch.
Definition: MHO_ExtremaSearch.hh:29
std::size_t GetMinLocation()
Getter for min location (offset into the array)
Definition: MHO_ExtremaSearch.hh:60
MHO_ExtremaSearch()
Definition: MHO_ExtremaSearch.hh:31
std::size_t GetMaxLocation()
Getter for max location (offset into the array)
Definition: MHO_ExtremaSearch.hh:53
double GetMax()
Getter for maximum value across the array.
Definition: MHO_ExtremaSearch.hh:39
double GetMin()
Getter for minimum value across the.
Definition: MHO_ExtremaSearch.hh:46
virtual ~MHO_ExtremaSearch()
Definition: MHO_ExtremaSearch.hh:32
virtual bool InitializeImpl(const XArgType *) override
Initializes the operator.
Definition: MHO_ExtremaSearch.hh:70
virtual bool ExecuteImpl(const XArgType *in) override
Executes search operation using input argument and returns true.
Definition: MHO_ExtremaSearch.hh:79
Class MHO_InspectingOperator.
Definition: MHO_InspectingOperator.hh:21
#define max(a, b)
Definition: max555.c:10
Definition: MHO_AdhocFlagging.hh:18