#include "utils.h" #include void printCenteredTitle(const char *title, char fill, int dim) { int len = strlen(title); int first = dim/2 + len/2; if(len >0) std::cout<<"\n"; std::cout.width(first); std::cout.fill(fill); std::cout< eps) { diffs += 1; if(diffs == 1) std::cout<<"\n"; if(diffs < limit) std::cout<<" | [ "<> pid >> comm >> state >> ppid >> pgrp >> session >> tty_nr >> tpgid >> flags >> minflt >> cminflt >> majflt >> cmajflt >> utime >> stime >> cutime >> cstime >> priority >> nice >> O >> itrealvalue >> starttime >> vsize >> rss; stat_stream.close(); long page_size_kb = sysconf(_SC_PAGE_SIZE) / 1024; // in case x86-64 is configured to use 2MB pages vm_usage_kb = vsize / 1024.0; resident_set_kb = rss * page_size_kb; } void removePathAndExtension(const std::string &full_string, std::string &name){ name = full_string; std::string tmp_str = full_string; std::string slash = "/"; std::string dot = "."; std::size_t current, previous = 0; //remove path /path/to/ current = tmp_str.find(slash); if (current != std::string::npos) { while (current != std::string::npos) { name = tmp_str.substr(previous, current - previous); previous = current + 1; current = tmp_str.find(slash, previous); } name = tmp_str.substr(previous, current - previous); } // remove extension current = name.find(dot); previous = 0; if (current != std::string::npos) name = name.substr(previous, current); // std::cout<<"full string: "<