#include <boost/enable_shared_from_this.hpp>
#include <sigc++/sigc++.h>
-class Log;
-class FilmState;
+class Film;
class Options;
/** @class Job
class Job : public boost::enable_shared_from_this<Job>
{
public:
- Job (boost::shared_ptr<const FilmState> s, boost::shared_ptr<const Options> o, Log* l, boost::shared_ptr<Job> req);
+ Job (boost::shared_ptr<Film> s, boost::shared_ptr<Job> req);
/** @return user-readable name of this job */
virtual std::string name () const = 0;
void descend (float);
float overall_progress () const;
- void emit_finished ();
-
boost::shared_ptr<Job> required () const {
return _required;
}
- /** Emitted from the GUI thread */
sigc::signal0<void> Finished;
protected:
void set_state (State);
void set_error (std::string e);
- /** FilmState for this job */
- boost::shared_ptr<const FilmState> _fs;
- /** options in use for this job */
- boost::shared_ptr<const Options> _opt;
- /** a log that this job can write to */
- Log* _log;
+ /** Film for this job */
+ boost::shared_ptr<Film> _film;
private: