#ifndef CRUNTHREAD_H
#define CRUNTHREAD_H

#include <qthread.h>

class CRenderObj;
class CProgressDialog;


class CRunThread : public QThread
{
 public:
  CRunThread( CRenderObj*      surfaceobj,
              const QString&   filename,
              unsigned int     stackSize = 0);

  const QString& getProgressLabel() const { return m_ProgressLabel; }
  int getProgress() const { return m_Progress; }
  void end() { m_end = true; }

 protected:
  virtual void run(void);

 private:
  CRenderObj   *m_pSurfaceObj;
  QString       m_filename;

  QString       m_ProgressLabel;
  int           m_Progress;
  volatile bool m_end;
};

#endif // CRUNTHREAD_H
