23 lines
336 B
C++
23 lines
336 B
C++
|
|
#pragma once
|
|
|
|
#include <libconfig.h++>
|
|
|
|
template <typename T>
|
|
class IConfig {
|
|
|
|
public:
|
|
|
|
using Params = T;
|
|
|
|
IConfig(Params* params) : params_(params) { }
|
|
~IConfig() = default;
|
|
|
|
virtual bool parseConfig(const libconfig::Setting& setting) = 0;
|
|
Params* params() { return params_; }
|
|
|
|
protected:
|
|
Params* params_;
|
|
|
|
};
|