Skip to content
Snippets Groups Projects
property_impl.hpp 916 B
Newer Older
#pragma once

#include <ftl/configurable.hpp>
#include <voltu/types/property.hpp>
#include <string>

namespace voltu
{
namespace internal
{

class CfgPropertyImpl : public voltu::Property
{
public:
	CfgPropertyImpl(ftl::Configurable *cfg, const std::string &name);
	virtual ~CfgPropertyImpl() override;

	virtual void setInt(int) override;

	virtual void setFloat(float) override;

	virtual void setString(const std::string &) override;

	virtual void setBool(bool) override;

	virtual int getInt() override;

	virtual float getFloat() override;

	virtual std::string getString() override;

	virtual bool getBool() override;

private:
	ftl::Configurable *cfg_;
	std::string name_;
};

/*class FloatCfgProperty : public CfgPropertyImpl
{
public:
	FloatCfgProperty(ftl::Configurable *cfg, const std::string &name);
	~FloatCfgProperty() override;

	void setFloat(float) override;

	float getFloat() override;
};*/

}
}