Skip to content

Studio/src/Job/Job.h

Namespaces

Name
shapeworks

Classes

Name
class shapeworks::Job

Source code

#pragma once
#include <QObject>
#include <QElapsedTimer>

namespace shapeworks {

class Job : public QObject {
  Q_OBJECT

public:

  Job();
  virtual ~Job();

  virtual void run() = 0;

  virtual QString name() = 0;

  virtual QString get_completion_message();

  void start_timer();
  qint64 timer_elapsed();

public Q_SLOTS:

Q_SIGNALS:
  void error_message(QString);
  void warning_message(QString);
  void progress(double);
  void message(QString);
  void finished();

private:
  QElapsedTimer timer_;
};
}

Updated on 2022-07-23 at 16:40:07 -0600