X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fexternalaction.h;h=6df268fd4c25e325fff5976da97ba9aab1f372c4;hb=05a2b9dabd01414e9e9a91f9d69babaca4ccb32d;hp=0d0924a966e049777f0afe02bd700d80e9d6e025;hpb=f1c967215e6b08095bdf07518472beca3067ec37;p=builder.git diff --git a/source/externalaction.h b/source/externalaction.h index 0d0924a..6df268f 100644 --- a/source/externalaction.h +++ b/source/externalaction.h @@ -1,21 +1,36 @@ +/* $Id$ + +This file is part of builder +Copyright © 2006-2009 Mikko Rasa, Mikkosoft Productions +Distributed under the LGPL +*/ + #ifndef EXTERNALACTION_H_ #define EXTERNALACTION_H_ #include #include #include "action.h" +#include "misc.h" +/** +Base class for Actions that want to execute an external program. +*/ class ExternalAction: public Action { -public: - int check(); protected: - std::list argv; + StringList argv; + Msp::FS::Path work_dir; int pid; int exit_code; ExternalAction(Builder &b): Action(b), pid(0), exit_code(0) { } + + /** Starts the external program. Fill in argv before calling this. */ void launch(); + +public: + virtual int check(); }; #endif