int main() { std::string line; Events events; while (std::getline(std::cin, line)) { std::vector<std::string> elements; boost::split(elements, line, boost::is_any_of("/")); if (elements.size() != 4) { std::cerr << "Warning: elements.size() != 4" << std::endl; continue; } Event e; e.player = elements[0]; e.map = elements[1]; e.lapTime = parseLapTime(elements[2]); e.date = parseDate(elements[3]); events.push_back(e); } std::cout << "Number of events: " << events.size() << std::endl; std::sort(events.begin(), events.end()); std::cout << "Last event: " << events.back() << std::endl; Ranking ranking = getRankings(events, boost::posix_time::time_from_string("2014-01-03 22:00:00.000")); for ( unsigned i = 0; i < 20 && i < ranking.size(); ++i ) { std::cout << i+1 << ".: " << ranking[i].getPlayer() << ", Time: " << ranking[i].getTotalLapTime() << std::endl; } std::cout << "Current leader = " << ranking[0].getTotalLapTime() << std::endl; }
/** Constructor */ PostedListWidget::PostedListWidget(const RsGxsGroupId &postedId, QWidget *parent) : GxsMessageFramePostWidget(rsPosted, parent), ui(new Ui::PostedListWidget) { /* Invoke the Qt Designer generated object setup routine */ ui->setupUi(this); /* Setup UI helper */ mStateHelper->addWidget(mTokenTypeAllPosts, ui->hotSortButton); mStateHelper->addWidget(mTokenTypeAllPosts, ui->newSortButton); mStateHelper->addWidget(mTokenTypeAllPosts, ui->topSortButton); mStateHelper->addWidget(mTokenTypePosts, ui->hotSortButton); mStateHelper->addWidget(mTokenTypePosts, ui->newSortButton); mStateHelper->addWidget(mTokenTypePosts, ui->topSortButton); mStateHelper->addWidget(mTokenTypeGroupData, ui->submitPostButton); mStateHelper->addWidget(mTokenTypeGroupData, ui->subscribeToolButton); connect(ui->hotSortButton, SIGNAL(clicked()), this, SLOT(getRankings())); connect(ui->newSortButton, SIGNAL(clicked()), this, SLOT(getRankings())); connect(ui->topSortButton, SIGNAL(clicked()), this, SLOT(getRankings())); connect(ui->nextButton, SIGNAL(clicked()), this, SLOT(showNext())); connect(ui->prevButton, SIGNAL(clicked()), this, SLOT(showPrev())); connect(ui->subscribeToolButton, SIGNAL(subscribe(bool)), this, SLOT(subscribeGroup(bool))); // default sort method. mSortMethod = RsPosted::HotRankType; mLastSortMethod = RsPosted::TopRankType; // to be different. mPostIndex = 0; mPostShow = POSTED_DEFAULT_LISTING_LENGTH; mTokenTypeVote = nextTokenType(); ui->hotSortButton->setChecked(true); /* fill in the available OwnIds for signing */ ui->idChooser->loadIds(IDCHOOSER_ID_REQUIRED, RsGxsId()); connect(ui->submitPostButton, SIGNAL(clicked()), this, SLOT(newPost())); /* load settings */ processSettings(true); /* Initialize GUI */ setGroupId(postedId); }