1 #ifndef SOURCEGENERATOR_H_
2 #define SOURCEGENERATOR_H_
4 #include <msp/datafile/objectloader.h>
5 #include "sourcepackage.h"
8 class SourceGenerator: public Tool
11 class Loader: public Msp::DataFile::ObjectLoader<SourceGenerator>
14 Loader(SourceGenerator &);
17 void command(const std::string &);
18 void in_suffix(const std::string &);
19 void out_suffix(const std::string &);
23 const SourcePackage &package;
24 std::list<std::string> out_suffixes;
27 SourceGenerator(Builder &, const SourcePackage &, const std::string &);
29 virtual Target *create_source(const Component &, const Msp::FS::Path &) const;
30 virtual Target *create_target(const std::list<Target *> &, const std::string &);
32 virtual Task *run(const Target &) const;