void VERILOG::parseInputs(){ boost::smatch m, me; boost::regex reg_inputs = this->getInputsRegex(); boost::regex reg_input = this->getInputRegex(); std::string s = this->parseInput; while (boost::regex_search (s, m, reg_inputs)) { std::string result = std::string(m[1].str()); while (boost::regex_search (result, me, reg_input)) { std::string inputName = std::string(me[1].str()); this->circuit->addInput(inputName, InputPtr(new Input(inputName))); this->circuit->getInput(inputName)->setOutputKey(this->gateCounter); this->gateCounter++; result = me.suffix().str(); } s = m.suffix().str(); } this->parseInput = s; }
GS2D_API InputPtr CreateInput(boost::any data, const bool showJoystickWarnings) { GS2D_UNUSED_ARGUMENT(data); return InputPtr(new SDLInput(showJoystickWarnings)); }