/* evaluate the expression after seeing any operand change. * return whether expression evaluated to 0. * exit(2) is trouble or timeout waiting for operands we expect. */ static int runEval (FILE *fp) { char errmsg[1024]; double v; alarm(timeout); while (1) { if (evalExpr (&v, errmsg) < 0) { fprintf (stderr, "Eval: %s\n", errmsg); exit(2); } if (bflag && v) fprintf (stderr, "\a"); if (eflag) fprintf (stderr, "%g\n", v); if (!wflag || v != 0) break; while (setOp (nxtEle (fp)) < 0) continue; alarm(timeout); } alarm(0); if (!eflag && fflag) fprintf (stderr, "%g\n", v); return (v == 0); }
OOModel::Expression* AssignmentDescriptor::create(const QList<OOModel::Expression*>& operands) { auto ae = new OOModel::AssignmentExpression(); ae->setOp(assignmentType_); ae->setLeft(operands.first()); ae->setRight(operands.last()); return ae; }
/* wait for defXXX or setXXX for each property in the expression. * return when find all operands are found or * exit(2) if time out waiting for all known operands. */ static void initProps (FILE *fp) { alarm (timeout); while (allOperandsSet() < 0) { if (setOp (nxtEle (fp)) == 0) alarm(timeout); } alarm (0); }
void GLTextureStage::setOp(OpType alpha, TextureOp op, TextureArg arg0, TextureArg arg1) { if(op != OpDisable) { if(op != OpSelectArg2) { args[alpha][0] = arg0; } if(op != OpSelectArg1) { args[alpha][1] = arg1; } } setOp(alpha, op); }
/** @param mode 'v' to set voice, 'a' to set admin, 'h' to set halfop, 'o' to set op. * @param state what to set the mode to. */ bool ChannelNick::setMode(char mode, bool state) { switch (mode) { case 'q': return setOwner(state); case 'a': return setAdmin(state); case 'o': return setOp(state); case 'h': return setHalfOp(state); case 'v': return setVoice(state); default: qDebug() << "Mode '" << mode << "' not recognised in setModeForChannelNick"; return false; } }
void matrixEnter::make_visible(int li, int co, /*MaceInt characteristic,*/ QListWidgetItem *i, bool vec, bool quad){ q = quad; this->clean(); mercury->setData(100,i->data(100)); setOp(i); if (vec && op == "write a matrix") label->setText("write a vector"); else label->setText(factory->get_info(op)); lines = li; columns = co; matInfo = "No"; if (fctnCode == 143){ for(int i = 0; i < lines; i++){ for(int j = 0; j <= columns; j++){ dit = new MaceLineEdit; chooseMode(/*characteristic,*/dit); dit->setText("0"); matrix->addWidget(dit,i,2*j,1, 1); edits.append(dit); if (j<columns){ hText = hText.number(j); hText = hText.prepend("<font size=\"4\">· X<sub>"); if(j < columns-1){ hText = hText.append("</sub> + </font>"); } else{ hText = hText.append("</sub> = </font>"); } labHelp = new QLabel; labHelp->setText(hText); matrix->addWidget(labHelp,i,2*j+1,1, 1); labels.append(labHelp); } } } } else{ for(int i = 0; i < lines; i++){ for(int j = 0; j < columns; j++){ dit = new MaceLineEdit; chooseMode(/*characteristic,*/dit); dit->setText("0"); matrix->addWidget(dit,i,j,1, 1); edits.append(dit); } } } info->setHtml(factory->help_info(op,fctnCode)); if (op == "+ for matrices" || op =="- for matrices" || op == "cross product" || op == "change of basis" || op == "/ for matrices" || vec){ changeLinCol->setHidden(true); } else{ changeLinCol->setHidden(false); } info->setHidden(true); layout()->setSizeConstraint(QLayout::SetFixedSize); but->setFocus(); emit hello(); show(); }
Move::Move() { setOp("->"); }
void GLTextureStage::SetAlphaOp(TextureOp op) { setOp(Alpha, op); }
void GLTextureStage::SetAlphaOp(TextureOp op, TextureArg arg0, TextureArg arg1) { setOp(Alpha, op, arg0, arg1); }
void GLTextureStage::SetColorOp(TextureOp op) { setOp(Color, op); }
void GLTextureStage::SetColorOp(TextureOp op, TextureArg arg0, TextureArg arg1) { setOp(Color, op, arg0, arg1); }
void GLTextureStage::setOp(OpType alpha, TextureOp op) { if(mStage != 0) { glActiveTexture(GL_TEXTURE0 + mStage); } bool wasEnabled = isEnabled(); ops[alpha] = op; bool enabled = isEnabled(); if(wasEnabled != enabled) { if(enabled) { glEnable(GL_TEXTURE_2D); glTexEnvi(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_COMBINE); renderer->maxTextureStage = std::max<size_t>(mStage, renderer->maxTextureStage); } else { glDisable(GL_TEXTURE_2D); if(renderer->maxTextureStage == mStage) { renderer->maxTextureStage = 0; for(int stage = mStage - 1; stage >= 0; stage--) { if(renderer->GetTextureStage(stage)->isEnabled()) { renderer->maxTextureStage = stage; break; } } } } } CHECK_GL; switch(op) { case OpDisable: { setOp(alpha, GL_REPLACE, 1); setArg(alpha, Arg0, ArgCurrent); CHECK_GL; break; } case OpSelectArg1: { setOp(alpha, GL_REPLACE, 1); setArg(alpha, Arg0, args[alpha][Arg0]); CHECK_GL; break; } case OpSelectArg2: { setOp(alpha, GL_REPLACE, 1); setArg(alpha, Arg0, args[alpha][Arg1]); CHECK_GL; break; } case OpModulate: { setOp(alpha, GL_MODULATE, 1); setArg(alpha, Arg0, args[alpha][Arg0]); setArg(alpha, Arg1, args[alpha][Arg1]); CHECK_GL; break; } case OpModulate2X: { setOp(alpha, GL_MODULATE, 2); setArg(alpha, Arg0, args[alpha][Arg0]); setArg(alpha, Arg1, args[alpha][Arg1]); CHECK_GL; break; } case OpModulate4X: { setOp(alpha, GL_MODULATE, 4); setArg(alpha, Arg0, args[alpha][Arg0]); setArg(alpha, Arg1, args[alpha][Arg1]); CHECK_GL; break; } case OpAddSigned: { setOp(alpha, GL_ADD_SIGNED, 1); setArg(alpha, Arg0, args[alpha][Arg0]); setArg(alpha, Arg1, args[alpha][Arg1]); CHECK_GL; break; } } if(mStage != 0) { glActiveTexture(GL_TEXTURE0); } }
void GLTextureStage::setOp(OpType alpha, TextureOp op) { if(mStage != 0) { glActiveTexture(GL_TEXTURE0 + mStage); } bool wasEnabled = isEnabled(); ops[alpha] = op; bool enabled = isEnabled(); if(wasEnabled != enabled) { if(enabled) { glEnable(GL_TEXTURE_2D); setTexEnv(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_COMBINE); renderer->maxTextureStage = std::max<size_t>(mStage, renderer->maxTextureStage); } else { glDisable(GL_TEXTURE_2D); if(renderer->maxTextureStage == mStage) { renderer->maxTextureStage = 0; for(int stage = mStage - 1; stage >= 0; stage--) { if(renderer->GetTextureStage(stage)->isEnabled()) { renderer->maxTextureStage = stage; break; } } } } } switch(op) { case OpDisable: { setOp(alpha, GL_REPLACE, 1); setArg(alpha, GL_PREVIOUS); break; } case OpSelectArg1: { setOp(alpha, GL_REPLACE, 1); setArg(alpha, GL_TEXTURE); break; } case OpModulate: { setOp(alpha, GL_MODULATE, 1); setArg(alpha, GL_TEXTURE); break; } case OpModulate2X: { setOp(alpha, GL_MODULATE, 2); setArg(alpha, GL_TEXTURE); break; } case OpModulate4X: { setOp(alpha, GL_MODULATE, 4); setArg(alpha, GL_TEXTURE); break; } } if(mStage != 0) { glActiveTexture(GL_TEXTURE0); } }