X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fsourcegenerator.h;h=e9fe3087e07e7eb864b00c32ab1b8985db3b24b7;hb=1ed833343bc83b83c5f61cbfd74423bbba677a04;hp=bb1a88e6a5f99abb871e4cdd0723611980683084;hpb=9053d11310842cb9b8a0f13fe1d86b60cae5231c;p=builder.git diff --git a/source/sourcegenerator.h b/source/sourcegenerator.h index bb1a88e..e9fe308 100644 --- a/source/sourcegenerator.h +++ b/source/sourcegenerator.h @@ -6,6 +6,8 @@ #include "sourcepackage.h" #include "tool.h" +class SourceFile; + class SourceGenerator: public Tool { public: @@ -15,22 +17,28 @@ public: Loader(SourceGenerator &); private: + void argument(const std::string &); + void arguments(const std::vector &); void command(const std::string &); void in_suffix(const std::string &); + void out_argument(const std::string &); void out_suffix(const std::string &); }; private: const SourcePackage &package; - std::list out_suffixes; + std::vector out_suffixes; + std::vector arguments; + std::string out_argument; public: SourceGenerator(Builder &, const SourcePackage &, const std::string &); - virtual Target *create_source(const Component &, const Msp::FS::Path &) const; - virtual Target *create_target(const std::list &, const std::string &); + Target *create_source(const Component &, const Msp::FS::Path &) const override; + Target *create_target(const std::vector &, const std::string &) override; - virtual Task *run(const Target &) const; +private: + static Task *_run(const SourceFile &); }; #endif