#ifndef TASKGENERATOR_H
#define TASKGENERATOR_H
#define LENGHT_Range 10
#define TIME_RANGE 20
#define PIORITY_RANGE 4
struct SingleTask;
class TaskGenerator {
public:
TaskGenerator();
TaskGenerator(int processQuantity);
TaskGenerator(const TaskGenerator& orig);
virtual ~TaskGenerator();
struct SingleTask generateTasks();
struct SingleTask tasks;
private:
int processQuantity;
};
#endif /* TASKGENERATOR_H */
#include "TaskGenerator.h"
#include <cstdlib>
#include <ctime>
TaskGenerator::TaskGenerator() {
}
TaskGenerator::TaskGenerator(int processQuantity) {
this->processQuantity = processQuantity;
tasks = generateTasks();
}
TaskGenerator::TaskGenerator(const TaskGenerator& orig) {
}
TaskGenerator::~TaskGenerator() {
}
TaskGenerator::generateTasks() {
srand( time(NULL));
struct SingleTask taskArray = new SingleTask[this->processQuantity];
for (int i = 0; i < this->processQuantity; i++) {
taskArray[i].piority = rand() % PIORITY_RANGE;
taskArray[i].startTime = rand() % TIME_RANGE;
taskArray[i].tasklength = rand() % LENGHT_Range;
}
return taskArray;
}
struct SingleTask {
int startTime;
int tasklength;
int piority;
};
int main(int argc, char** argv) {
TaskGenerator *taskGenerator = new TaskGenerator(10);
//SingleTask *task = taskGenerator->generateTasks();
//cout << taskGenerator->tasks->piority;
}