X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Ftar.h;h=9be26d9debcac1303259c766575d06e2e9ad96bf;hb=8ee4fd693c8d15265f0c145221737a322f89618b;hp=137a7ee00969af8bcaa78307e614ee511fa0b63b;hpb=555190f7eafcf3a67750fc63872b23e17371aa98;p=builder.git diff --git a/source/tar.h b/source/tar.h index 137a7ee..9be26d9 100644 --- a/source/tar.h +++ b/source/tar.h @@ -1,45 +1,33 @@ -/* $Id$ - -This file is part of builder -Copyright © 2007 Mikko Rasa, Mikkosoft Productions -Distributed under the LGPL -*/ - #ifndef TAR_H_ #define TAR_H_ #include -#include "action.h" -#include "misc.h" +#include "internaltask.h" +#include "tool.h" class TarBall; -class Tar: public Action +class Tar: public Tool { -public: - Tar(Builder &, const TarBall &); - ~Tar(); - - virtual int check(); private: - class Worker: public Msp::Thread + class Worker: public InternalTask::Worker { - public: - Worker(Tar &); - bool get_done() const { return done; } - bool get_error() const { return error; } private: - Tar &tar; - bool done; - bool error; + const TarBall &tarball; - void main(); + public: + Worker(const TarBall &); + + private: + virtual void main(); void store_number(char *, unsigned, unsigned); }; - const TarBall &tarball; - StringList files; - Worker *worker; +public: + Tar(Builder &); + + virtual Target *create_target(const std::list &, const std::string &); + virtual Task *run(const Target &) const; }; #endif