int _tmain(int argc, _TCHAR* argv[]) { if (argc != 2) { std::wcout << L"Usage: " << argv[0] << L" <num>" << std::endl; return 1; } try { std::srand( static_cast<uint32_t>( std::time(0) ) ); uint32_t count { static_cast<uint32_t>(std::stoi(argv[1])) }; std::set<std::vector<uint8_t>> eans; do { auto ean = GetBarcode(); eans.insert(ean); } while ( eans.size() < count ); for(auto ean: eans) { for(auto dig: ean) { std::cout << static_cast<int>(dig); } std::cout << std::endl; } } catch (const std::exception& ex) { std::cerr << "exception what = '" << ex.what() << "'" << std::endl; } return 0; }
bool SimChanger::MoveTape(int srcSlotId, int dstSlotId) { string barcodeSrc; string barcodeDst; string keySrc; string keyDst; //boost::lock_guard<boost::mutex> lock(mutex_); if(!GetBarcode(srcSlotId,barcodeSrc, keySrc) || keySrc.empty()) { return false; } if(!GetBarcode(dstSlotId,barcodeDst, keyDst) || !keyDst.empty()) { return false; } TapeMap::iterator iterTape = tapes_.find(keySrc); if(iterTape == tapes_.end()) { return false; } if(!SetBarcode(dstSlotId,barcodeSrc, keySrc)) { return false; } if(!SetBarcode(srcSlotId,barcodeDst, keyDst)) { SetBarcode(dstSlotId,barcodeDst, keyDst); return false; } return SetSlotID(dstSlotId, keySrc); }