10#include <RtypesCore.h>
12#include <tracking/trackFindingCDC/utilities/Named.h>
13#include <tracking/trackFindingCDC/utilities/MayBePtr.h>
24 namespace TrackFindingCDC {
34 virtual size_t size()
const = 0;
47 virtual std::string
getName(
int iValue)
const = 0;
50 virtual void set(
int iValue, Float_t value) = 0;
53 void set(
const char*
const name, Float_t value)
59 virtual Float_t
get(
int iValue)
const = 0;
62 Float_t
get(
const char*
const name)
const
71 virtual MayBePtr<Float_t>
find(std::string name)
87 std::map<std::string, Float_t>
getNamedValues(std::string prefix =
"")
const;
An abstract tuple of float value where each value has an associated name.
virtual int getNameIndex(const char *name) const =0
Getter for the index from a name.
Float_t & operator[](const char *const name)
Reference getter for the value with the given name.
Float_t get(const char *const name) const
Getter for the value with the given name.
std::vector< Named< Float_t * > > getNamedVariables(std::string prefix="")
Getter for named references to the variables in this tuple.
virtual MayBePtr< Float_t > find(std::string name)
Getter for a pointer to the value with the given name.
virtual Float_t get(int iValue) const =0
Getter for the value of the ith part.
void set(const char *const name, Float_t value)
Setter for the value with the given name.
virtual Float_t & operator[](int iValue)=0
Reference getter for the value of the ith part.
virtual void set(int iValue, Float_t value)=0
Setter for the value of the ith part.
virtual size_t size() const =0
Getter for the number of parts.
virtual std::string getName(int iValue) const =0
Getter for the ith name.
virtual ~NamedFloatTuple()
Marking the destructor virtual since we are using virtual functions.
std::map< std::string, Float_t > getNamedValues(std::string prefix="") const
Getter for a map of all name and value pairs in this tuple.
Abstract base class for different kinds of events.