fsfw/src/fsfw/introspection/EnumIF.h

16 lines
426 B
C
Raw Normal View History

2022-06-28 18:56:52 +02:00
#pragma once
#include <cstddef>
2022-08-25 22:29:20 +02:00
#include <cstdint>
2022-06-28 18:56:52 +02:00
class EnumIF {
public:
2022-08-25 22:29:20 +02:00
virtual ~EnumIF() {}
2022-06-28 18:56:52 +02:00
virtual int64_t getValue() const = 0;
virtual bool isValid() const = 0;
virtual size_t getSize() const = 0;
virtual size_t getIndex(int64_t value) const = 0;
virtual const int64_t *getElements() const = 0;
virtual const char *const *getDescriptions() const = 0;
virtual const char *getDescription() const = 0;
};