 |
Belle II Software
release-05-01-25
|
21 namespace TrackFindingCDC {
24 template<
class T,
class ATag = T>
25 class DiscreteValue :
public std::vector<T>::const_iterator {
29 using Super =
typename std::vector<T>::const_iterator;
32 using This = DiscreteValue<T, ATag>;
49 explicit operator const T& ()
const
53 friend std::ostream&
operator<<(std::ostream& output,
const This& discreteValue)
54 {
return output << *discreteValue; }
62 {
return {{
This(values.front()),
This(values.back()) }}; }
typename std::vector< T >::const_iterator Super
Type of the base class.
DiscreteValue< T, ATag > This
Type of this class.
static std::array< This, 2 > getRange(Array &values)
Extract the range from an array providing the discrete values.
Abstract base class for different kinds of events.
DiscreteValue()=default
Default constructor for to obtain a valid object in all contexts.
friend std::ostream & operator<<(std::ostream &output, const This &discreteValue)
Output operator for debugging.
std::vector< T > Array
The type of the array which contains the underlying values.