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 task. Depending on your CPU architecture, several jobs will be executed simultaneously. A Job class produces a JobResult function containing 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.
Please create a C++ header file called JobResult.h:
#include <QSize> #include <QVector> #include <QPointF> struct JobResult { JobResult(int valueCount = 1) : areaSize(0, 0), pixelPositionY(0), moveOffset(0, 0), scaleFactor(0.0), ...