#pragma once #include #include #include #include #include "../Utils/utils.h" //make 'class' - need friend for Gcov_info struct Perform { int number; int percent; Perform(); Perform(int a, int b); void set(int a, int b); int getNumber(); int getPercent(); void setNumber(int a); void setPercent(int a); void gcov_print(); friend std::ostream &operator<<(std::ostream &out, const Perform &a); }; class Gcov_info { int numLine; int64_t executedCount; int countCalls; std::map calls; int countBranches; std::map branches; public: Gcov_info(); Gcov_info(int a, int b); void set(int a, int64_t b, int c, int d); void clear() { calls.clear(); branches.clear(); countCalls = 0; countBranches = 0; } int getNumLine() const; int64_t getExecutedCount() const; void setNumLine(int a); void setExecutedCount(int64_t a); int getCountCalls() const; int getCountBranches() const; std::map getCalls() const; std::map getBranches() const; void setCall(Perform a); void setBranch(Perform a); void gcov_print() const; friend std::ostream &operator<<(std::ostream &out, const Gcov_info &a); };