Template Class Info::EnumField

Nested Relationships

This class is a nested type of Class Info.

Class Documentation

template<typename T>
class EnumField

A message field representable by an enum of a given type.

Public Functions

inline EnumField(const HebiInfoRef &internal, HebiInfoEnumField field)
inline explicit operator bool() const

Allows casting to a bool to check if the field has a value without directly calling has().

This can be used as in the following (assuming ‘parent’ is a parent message, and this field is called ‘myField’)

Info::EnumField& f = parent.myField();
if (f)
  std::cout << "Field has value: " << f.get() << std::endl;
else
  std::cout << "Field has no value!" << std::endl;

inline bool has() const

True if (and only if) the field has a value.

inline T get() const

If the field has a value, returns that value; otherwise, returns a default.