X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fconfig.h;h=355108fb2c35bcd26f5c012c107dc4d587703212;hb=6613371a07a1a9a8d5dead488092015261a9bf5f;hp=9a73880ac887f331e9eae93d0ccbd48892aff7fd;hpb=cbb3c4c6aab7b04f7bd2178fb8f12846d532a472;p=builder.git diff --git a/source/config.h b/source/config.h index 9a73880..355108f 100644 --- a/source/config.h +++ b/source/config.h @@ -6,13 +6,19 @@ #include #include #include -#include "option.h" typedef std::map RawOptionMap; +/** +Manages configuration for a package. A configuration may have an arbitary +amount of options, as well as a modification time (mtime). +*/ class Config { public: + /** + A single configuration option. + */ struct Option { std::string name; @@ -26,6 +32,7 @@ public: void add_option(const std::string &, const std::string &, const std::string &); const Option &get_option(const std::string &) const; + const OptionMap &get_options() const { return options; } const Msp::Time::TimeStamp &get_mtime() const { return mtime; } bool is_option(const std::string &) const; bool process(const RawOptionMap &);