RunData.h 889 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #pragma once
  2. #include <string>
  3. #include <vector>
  4. #include <fstream>
  5. #include <QPoint>
  6. #include <map>
  7. struct SolutionPointData {
  8. public:
  9. int iteration;
  10. double objectiveFunction;
  11. int particleNumber;
  12. };
  13. class RunData
  14. {
  15. public:
  16. std::string name;
  17. std::string information;
  18. std::vector<SolutionPointData> solutionVec;
  19. RunData();
  20. RunData(std::string filePath);
  21. std::vector<QPointF> bestSolutionPerIteration;
  22. std::vector<QPointF> averageSolutionPerItertion;
  23. std::vector<QPointF> minSolutionPerItertion;
  24. std::vector<QPointF> maxSolutionPerItertion;
  25. std::vector<QPointF> dotsForDistribution;
  26. std::map<int, std::vector<QPointF>> particleMap;
  27. private:
  28. bool badFileFlag = false;
  29. std::fstream fileStream;
  30. int actualLine = 0;
  31. void getLine(std::string& bufferString);
  32. void calculateBestAndAverageIter();
  33. void calculateParticleSolution();
  34. void calculateDotsForDistribution();
  35. };