/**
 * \file    Mimic_Category.hpp
 * \author  Silvan Murer
 * \date    02 August 2022
 *
 * \brief   Category class of genSDK GF implementation, based on Mimic_Node
 */

#ifndef INC_FEATURES_MIMIC_CATEGORY
#define INC_FEATURES_MIMIC_CATEGORY

#include "features/Mimic_Node.hpp"

#include <memory>
#include <string>
#include <vector>

namespace mimic {

class Mimic_Category : public Mimic_Node
{
private:

public:
	Mimic_Category();
	Mimic_Category(GenApi_3_4::INode* node);
	~Mimic_Category();

	virtual std::variant<int64_t, double, bool, std::string> getVariant(std::string name);
	virtual void setVariant(std::string name, std::variant<int64_t, double, bool, std::string> value);

	std::vector<std::shared_ptr<Mimic_Node>> getFeatures();
};

} /* namespace mimic */

#endif
