Skip to content

Studio/Analysis/ShapeEvaluationJob.h

Namespaces

Name
shapeworks
User usage reporting (telemetry)

Classes

Name
class shapeworks::ShapeEvaluationJob

Functions

Name
Q_DECLARE_METATYPE(Eigen::VectorXd )
Q_DECLARE_METATYPE(shapeworks::ShapeEvaluationJob::JobType )

Functions Documentation

function Q_DECLARE_METATYPE

Q_DECLARE_METATYPE(
    Eigen::VectorXd 
)

function Q_DECLARE_METATYPE

Q_DECLARE_METATYPE(
    shapeworks::ShapeEvaluationJob::JobType 
)

Source code

#pragma once

#include <ParticleShapeStatistics.h>

#include <Data/Worker.h>
#include <Job/Job.h>

namespace shapeworks {

class ShapeEvaluationJob : public Job
{
  Q_OBJECT
public:

  enum class JobType {
    CompactnessType, SpecificityType, GeneralizationType
  };

  ShapeEvaluationJob(JobType job_type, ParticleShapeStatistics stats);

  void run() override;

  QString name() override;

Q_SIGNALS:

  void report_progress(shapeworks::ShapeEvaluationJob::JobType job_type, float progress);
  void result_ready(shapeworks::ShapeEvaluationJob::JobType job_type, Eigen::VectorXd data);

private:

  void receive_progress(float progress);

  JobType job_type_;
  ParticleShapeStatistics stats_;
};
}

Q_DECLARE_METATYPE(Eigen::VectorXd);
Q_DECLARE_METATYPE(shapeworks::ShapeEvaluationJob::JobType);

Updated on 2024-03-17 at 12:58:44 -0600