void startReception(std::list<type>& msgs) { mutex_.lock(); total_msgs_ = msgs; number_samples_expected_ = total_msgs_.size(); current_received_count_ = 0; mutex_.unlock(); bool ret = false; do { receive_one(subscriber_, ret); } while(ret); receiving_.store(true); }
void startReception(size_t number_samples_expected = 0) { mutex_.lock(); current_received_count_ = 0; if(number_samples_expected > 0) number_samples_expected_ = number_samples_expected; else number_samples_expected_ = total_msgs_.size(); receiving_ = true; mutex_.unlock(); bool ret = false; do { receive_one(subscriber_, ret); } while(ret); }
int main(int argc, char **argv) { if (argc != 3) { printf("Syntax: %s <Interface Name> <Arbitration ID>\n", argv[0]); exit(1); } uint32_t id = (uint32_t)strtol(argv[2], NULL, 16) & 0x7FFFFFFF; initscr(); net_init(argv[1]); for (;;) receive_one(id); endwin(); return 0; }