Producer::Producer(const Name& prefix, Face& face, KeyChain& keyChain, const security::SigningInfo& signingInfo, time::milliseconds freshnessPeriod, size_t maxSegmentSize, bool isVerbose, bool needToPrintVersion, std::istream& is) : m_face(face) , m_keyChain(keyChain) , m_signingInfo(signingInfo) , m_freshnessPeriod(freshnessPeriod) , m_maxSegmentSize(maxSegmentSize) , m_isVerbose(isVerbose) { if (prefix.size() > 0 && prefix[-1].isVersion()) { m_prefix = prefix.getPrefix(-1); m_versionedPrefix = prefix; } else { m_prefix = prefix; m_versionedPrefix = Name(m_prefix).appendVersion(); } populateStore(is); if (needToPrintVersion) std::cout << m_versionedPrefix[-1] << std::endl; m_face.setInterestFilter(m_prefix, bind(&Producer::onInterest, this, _2), RegisterPrefixSuccessCallback(), bind(&Producer::onRegisterFailed, this, _1, _2)); if (m_isVerbose) std::cerr << "Data published with name: " << m_versionedPrefix << std::endl; }
MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), ui(new Ui::MainWindow) { ui->setupUi(this); ui->storage->setWidgetResizable(true); signalMapper = new QSignalMapper(); shopSignalMapper = new QSignalMapper(); //signals std::map<std::string,int> storageItems; storage = new Storage(storageItems); factory = new Factory(storage, 0, 0, 1, 20, 10, 0, std::vector<Worker*>(), std::map<std::size_t, Order*>()); connect(ui->toggleMainViewButton, SIGNAL(clicked()), this, SLOT(toggleMainViews())); connect(factory, SIGNAL(moneyChanged(int)), this, SLOT(onMoneyChanged(int))); connect(factory, SIGNAL(orderCreated(int)), this, SLOT(onOrderCreated(int))); connect(factory, SIGNAL(orderRemoved(int)), this, SLOT(onOrderRemoved(int))); connect(factory, SIGNAL(ratingChanged(float)), this, SLOT(onRatingChanged(float))); connect(factory, SIGNAL(levelChanged(int)), this, SLOT(onLevelChanged(int))); connect(ui->takeOrder, SIGNAL(clicked()), this, SLOT(onOrderTaken())); connect(storage, SIGNAL(addedMaterial(std::string)), this, SLOT(onAddedMaterial(std::string))); connect(signalMapper, SIGNAL(mapped(QString)), this, SLOT(onTookMaterial(QString))); connect(ui->check, SIGNAL(clicked()), this, SLOT(onCheck())); connect(shopSignalMapper, SIGNAL(mapped(QString)), this, SLOT(onPartBought(QString))); connect(factory,SIGNAL(levelChanged(int)), this, SLOT(onLevelChanged(int))); disableInput(); storage->add_material("\\w"); storage->add_material("\\w"); storage->add_material("\\w"); storage->add_material("\\w"); storage->add_material("\\w"); storage->add_material("\\w"); storage->add_material("\\w"); storage->add_material("\\w"); storage->add_material("\\w"); storage->add_material("\\w"); storage->add_material("\\w"); storage->add_material("[aeoui]"); storage->add_material("[aeoui]"); storage->add_material("[aeoui]"); storage->add_material(".?"); storage->add_material(".?"); storage->add_material(".?"); storage->add_material(".?"); storage->add_material(".?"); storage->add_material("\\d"); storage->add_material("\\d"); storage->add_material("\\d"); storage->add_material("\\d"); storage->add_material("[a-c]"); storage->add_material("[d-f]"); storage->add_material("[q-t]"); storage->add_material("[l-s]"); storage->add_material("[x-z]"); store = {{"( ͡° ͜ʖ ͡°)", 9001}, {"\\w", 2}, {"\\d", 2}, {"\\s", 2}, {"\\W", 2}, {"[abcdf]", 1}, {"[xyzt]", 1}, {"[qwerty]", 1}, {"[aeiouy]", 1}, {"[jklmn]", 1}, {"?", 5}, {"|", 5}, {".", 5}, {"+", 10}, {"*", 15}, {"[", 0},{"]", 0}}; ui->storageLayout->setContentsMargins(1, 1, 1, 1); populateStore(); onLevelChanged(1); }