Defining a Job class with QRunnable

Let's dive into the project's core. To speed up the Mandelbrot picture-generation, we will split the whole computation into multiple jobs. A Job is a request of a specific task. Depending the number of your CPU cores, several jobs will be executed simultaneously. A Job class produces a JobResult function that contains result values. In our project, a Job class generates values for one line of the complete picture. For example, an image resolution of 800 x 600 requires 600 jobs, each one generating 800 values.

Create a C++ header file called JobResult.h:

#include <QSize> 
#include <QVector> 
#include <QPointF>#include <QMetaType> struct JobResult { JobResult(int valueCount = 1) : areaSize(0, 0), pixelPositionY(0), ...

Get Mastering Qt 5 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.