void Xenakis::processOscCommand(const string& command, const ofxOscMessage& m) { if(isMatch(command, "nombre")) { if(validateOscSignature("([if])", m)) { nombre(getArgAsIntUnchecked(m, 0)); } } else if(isMatch(command, "delay")) { if(validateOscSignature("([if])", m)) { delay(getArgAsFloatUnchecked(m, 0)); } } Element::processOscCommand(command, m); }
void Perpendiculaire::processOscCommand(const string& command, const ofxOscMessage& m) { if(isMatch(command, "showSymbole")) { if(validateOscSignature("([TFif])", m)) { showSymbole = getArgAsBoolUnchecked(m, 0); } } else if(isMatch(command, "positionRelative")) { if(validateOscSignature("([f])", m)) { positionRelative = getArgAsFloatUnchecked(m, 0); } } else { Element::processOscCommand(command, m); } }
/// \brief Processeur de message OSC /// /// Le processeur s'attend à ce que la command soit : /// 'position [i][i]?', 'position [f][f]?' ou 'taille [if]' /// /// \param command const string& La commande OSC /// \param m const ofxOscMessage& La(es) valeur(s) associée(s) à la commande /// \return void /// /// void Danseur::processOscCommand(const string& command, const ofxOscMessage& m) { if(isMatch(command, "position")) { if(validateOscSignature("([i][i]?)", m)) /**< Position absolue en pixel sur l'écran */ { if(m.getNumArgs() == 1) { ofVec2f::set(getArgAsIntUnchecked(m, 0)); /**< Défini la position avec X=Y */ } else { ofVec2f::set(getArgAsIntUnchecked(m, 0), getArgAsIntUnchecked(m, 1)); /**< Défini la position par les attributs OSC */ } } else if(validateOscSignature("([if][if]?)", m)) /**< Position proportionnelle à la taille de l'écran */ { if(m.getNumArgs() == 1) { ofVec2f::set(getArgAsFloatUnchecked(m, 0)); /**< Défini la position avec X=Y */ } else { ofVec2f::set(getArgAsFloatUnchecked(m, 0) * ofGetWidth(), getArgAsFloatUnchecked(m, 1) * ofGetHeight()); /**< Défini la position par les attributs OSC */ } } } else if(isMatch(command, "dessinable")) { if(validateOscSignature("([TFif])", m)) { Dessinable(getArgAsBoolUnchecked(m, 0)); } } else if(isMatch(command, "animable")) { if(validateOscSignature("([TFif])", m)) { Animable(getArgAsBoolUnchecked(m, 0)); } } else if(isMatch(command, "apparait")) { if(validateOscSignature("([TFif][if]?[if]?)", m)) { if(getArgAsBoolUnchecked(m, 0)) { if(m.getNumArgs() >= 2) { if(m.getNumArgs() == 3) { _alpha.setDuration(getArgAsFloatUnchecked(m, 2)); } apparait(getArgAsFloatUnchecked(m, 1)); } else { apparait(); } } else { if(m.getNumArgs() == 2) { _alpha.setDuration(getArgAsFloatUnchecked(m, 1)); } disparait(); } } } else if(isMatch(command, "disparait")) { if(validateOscSignature("([TFif])", m)) { if(getArgAsBoolUnchecked(m, 0)) { disparait(); } } } else if(isMatch(command, "alpha")) { if(validateOscSignature("([if])", m)) { Alpha(getArgAsFloatUnchecked(m, 0)); } } else if(isMatch(command, "duration")) { if(validateOscSignature("([if])", m)) { _alpha.setDuration(getArgAsFloatUnchecked(m, 0)); } } else if(isMatch(command, "offset")) { if(validateOscSignature("([if])", m)) { offset(getArgAsIntUnchecked(m, 0)); } } else if(isMatch(command, "grand")) { if(validateOscSignature("([TFif])", m)) { bHugeText = getArgAsBoolUnchecked(m, 0); } } else if(isMatch(command, "afficherTemps")) { if(validateOscSignature("([TFif])", m)) { if(getArgAsBoolUnchecked(m, 0)) { toBeDrawn |= DANSEUR_TIME; } else { toBeDrawn &= ~DANSEUR_TIME; } } } else if(isMatch(command, "afficherXPos")) { if(validateOscSignature("([TFif])", m)) { if(getArgAsBoolUnchecked(m, 0)) { toBeDrawn |= DANSEUR_XPOS; } else { toBeDrawn &= ~DANSEUR_XPOS; } } } else if(isMatch(command, "afficherYPos")) { if(validateOscSignature("([TFif])", m)) { if(getArgAsBoolUnchecked(m, 0)) { toBeDrawn |= DANSEUR_YPOS; } else { toBeDrawn &= ~DANSEUR_YPOS; } } } else if(isMatch(command, "afficherAngle")) { if(validateOscSignature("([TFif])", m)) { if(getArgAsBoolUnchecked(m, 0)) { toBeDrawn |= DANSEUR_ANGLE; } else { toBeDrawn &= ~DANSEUR_ANGLE; } } } else if(isMatch(command, "afficherConstante")) { if(validateOscSignature("([TFif])", m)) { if(getArgAsBoolUnchecked(m, 0)) { toBeDrawn |= DANSEUR_CONSTANTE; } else { toBeDrawn &= ~DANSEUR_CONSTANTE; } } } else if(isMatch(command, "afficherAll")) { if(validateOscSignature("([TFif])", m)) { if(getArgAsBoolUnchecked(m, 0)) { toBeDrawn = DANSEUR_ALL; } else { toBeDrawn = DANSEUR_TIME; } } } else if(isMatch(command, "stopCounter")) { if(validateOscSignature("([TFif])", m)) { bStopCounter = getArgAsBoolUnchecked(m, 0); } } else if(isMatch(command, "vitesseRotation")) { if(validateOscSignature("([if])", m)) { _coteAngle.setDuration(getArgAsFloatUnchecked(m, 0)); } } }
//-------------------------------------------------------------- void PlayerAsset::processOscCommand(const string& command, const ofxOscMessage& m) { if(isMatch(command,"load")) { if(validateOscSignature("s", m)) { string assetAlias = getArgAsStringUnchecked(m, 0); if(hasAssetManager()) { BaseMediaAsset* asset = getAssetManager()->getAsset(assetAlias); if(asset != NULL) { if(asset->isPlayable()) { PlayableAsset* playableAsset = dynamic_cast<PlayableAsset*>(asset); if(playableAsset != NULL) { load(playableAsset); } else { ofLogError("PlayerAsset") << assetAlias << " could not be cast to a playable asset."; } } else { ofLogError("PlayerAsset") << assetAlias << " is not a playable asset."; } } else { ofLogError("PlayerAsset") << "no asset called " << assetAlias << " exists."; } } } } else if(isMatch(command,"start")) { player->start(); } else if(isMatch(command,"stop")) { player->stop(); } else if(isMatch(command,"pause")) { if(validateOscSignature("[sfi]", m)) { player->setPaused(getArgAsBoolUnchecked(m,0)); } } else if(isMatch(command,"loopmode")) { if(validateOscSignature("s", m)) { string loopMode = getArgAsStringUnchecked(m,0); if(isMatch(loopMode,"NONE")) { player->setLoopType(OF_LOOP_NONE); } else if(isMatch(loopMode,"LOOP")) { player->setLoopType(OF_LOOP_NORMAL); } else if(isMatch(loopMode,"PALINDROME")) { player->setLoopType(OF_LOOP_PALINDROME); } else { ofLog(OF_LOG_WARNING, "FrameBufferPlayer: Unknown loop mode: " + loopMode); } } } else if(isMatch(command,"looppoints")) { if(validateOscSignature("[fi][fi]", m)) { player->setLoopPoints(getArgAsFloatUnchecked(m,0),getArgAsFloatUnchecked(m,1)); } } else if(isMatch(command,"looppointstart")) { if(validateOscSignature("[fi]", m)) { player->setLoopPointStart(getArgAsFloatUnchecked(m,0)); } } else if(isMatch(command,"looppointend")) { if(validateOscSignature("[fi]", m)) { player->setLoopPointStart(getArgAsFloatUnchecked(m,0)); } } else if(isMatch(command,"looppointsn")) { if(validateOscSignature("[fi][fi]", m)) { player->setLoopPointsNorm(getArgAsFloatUnchecked(m,0),getArgAsFloatUnchecked(m,1)); } } else if(isMatch(command,"looppointstartn")) { if(validateOscSignature("[fi]", m)) { player->setLoopPointStartNorm(getArgAsFloatUnchecked(m,0)); } } else if(isMatch(command,"looppointendn")) { if(validateOscSignature("[fi]", m)) { player->setLoopPointStartNorm(getArgAsFloatUnchecked(m,0)); } } else if(isMatch(command,"frame")) { if(validateOscSignature("[fi]", m)) { player->setFrame(getArgAsFloatUnchecked(m,0)); } } else if(isMatch(command,"framen")) { if(validateOscSignature("[fi]", m)) { player->setFrameNorm(getArgAsFloatUnchecked(m,0)); } } else if(isMatch(command,"speed")) { if(validateOscSignature("[fi]", m)) { player->setSpeed(getArgAsFloatUnchecked(m,0)); } } else if(isMatch(command,"dump")) { dump(); } else { // unknown command } }
//-------------------------------------------------------------- void LayerTransform::processOscCommand(const string& command, const ofxOscMessage& m) { if(isMatch(command,"position") || isMatch(command,"p")) { if(validateOscSignature("([if][if]?[if]?)|([s][if])", m)) { if(m.getArgType(0) == OFXOSC_TYPE_STRING) { char c = tolower(getArgAsStringUnchecked(m,0)[0]); if(c == 'x') { setPositionX(getArgAsFloatUnchecked(m,1)); } else if(c == 'y') { setPositionY(getArgAsFloatUnchecked(m,1)); } else if(c == 'z') { setPositionZ(getArgAsFloatUnchecked(m,1)); } else if(c == 'n') { setPositionNormalized(getArgAsBoolUnchecked(m,1)); } else { ofLogError("LayerTransform") << "invalid arg type: " << c << " " << command << "."; } } else { setPositionX(getArgAsFloatUnchecked(m,0)); if(m.getNumArgs() > 1) { setPositionY(getArgAsFloatUnchecked(m,1)); if(m.getNumArgs() > 2) { setPositionZ(getArgAsFloatUnchecked(m,2)); } } } } } else if(isMatch(command,"anchorpoint") || isMatch(command,"a")) { if(validateOscSignature("([if][if]?[if]?)|([s][if])", m)) { if(m.getArgType(0) == OFXOSC_TYPE_STRING) { char c = tolower(getArgAsStringUnchecked(m,0)[0]); if(c == 'x') { setAnchorPointX(getArgAsFloatUnchecked(m,1)); } else if(c == 'y') { setAnchorPointY(getArgAsFloatUnchecked(m,1)); } else if(c == 'z') { setAnchorPointZ(getArgAsFloatUnchecked(m,1)); } else if(c == 'n') { setAnchorPointNormalized(getArgAsBoolUnchecked(m,1)); } else { ofLog(OF_LOG_ERROR, "LayerTransform: invalid arg type: " + ofToString(c) + " " + command); } } else { setAnchorPointX(getArgAsFloatUnchecked(m,0)); if(m.getNumArgs() > 1) { setAnchorPointY(getArgAsFloatUnchecked(m,1)); if(m.getNumArgs() > 2) { setAnchorPointZ(getArgAsFloatUnchecked(m,2)); } } } } } else if(isMatch(command,"rotate") || isMatch(command,"r")) { if(validateOscSignature("([if][if]?[if]?)|([s][if][if]?[if]?)", m)) { if(m.getArgType(0) == OFXOSC_TYPE_STRING) { char c = tolower(getArgAsStringUnchecked(m,0)[0]); if(c == 'x') { setRotationX(getArgAsFloatUnchecked(m,1)); } else if(c == 'y') { setRotationY(getArgAsFloatUnchecked(m,1)); } else if(c == 'z') { setRotationZ(getArgAsFloatUnchecked(m,1)); } else if(c == 'd') { setRotation(getArgsAsPoint(m, 1)); } else if(c == 'n') { setRotationNormalized(getArgAsBoolUnchecked(m,1)); } else { ofLog(OF_LOG_ERROR, "LayerTransform: invalid arg type: " + ofToString(c) + " " + command); } } else { setRotationX(getArgAsFloatUnchecked(m,0)); if(m.getNumArgs() > 1) { setRotationY(getArgAsFloatUnchecked(m,1)); if(m.getNumArgs() > 2) { setRotationZ(getArgAsFloatUnchecked(m,2)); } } } } } else if(isMatch(command,"scale") || isMatch(command,"s")) { if(validateOscSignature("([f][f]?[f]?)|([s][f])", m)) { if(m.getArgType(0) == OFXOSC_TYPE_STRING) { char c = tolower(getArgAsStringUnchecked(m,0)[0]); float val = getArgAsFloatUnchecked(m,1); if(c == 'x') { setScaleX(val); } else if(c == 'y') { setScaleY(val); } else if(c == 'z') { setScaleZ(val); } else { ofLog(OF_LOG_ERROR, "LayerTransform: invalid arg type: " + ofToString(c) + " " + command); } } else { setScaleX(getArgAsFloatUnchecked(m,0)); if(m.getNumArgs() > 1) { setScaleY(getArgAsFloatUnchecked(m,1)); if(m.getNumArgs() > 2) { setScaleZ(getArgAsFloatUnchecked(m,2)); } } } } } else if(isMatch(command,"opacity") || isMatch(command,"o")) { if(validateOscSignature("[if]", m)) { setOpacity(getArgAsFloatUnchecked(m,0)); } } else if(isMatch(command,"opacityn") || isMatch(command,"on")) { if(validateOscSignature("[if]", m)) { setOpacityNormalized(getArgAsFloatUnchecked(m,0)); } } else if(isMatch(command,"size") || isMatch(command, "sz")) { if(validateOscSignature("[if][if]", m)) { setSize(getArgAsFloatUnchecked(m,0),getArgAsFloatUnchecked(m,1)); } } else if(isMatch(command,"width") || isMatch(command, "w")) { if(validateOscSignature("[if]", m)) { setWidth(getArgAsFloatUnchecked(m,0)); } } else if(isMatch(command,"height") || isMatch(command, "h")) { if(validateOscSignature("[if]", m)) { setHeight(getArgAsFloatUnchecked(m,0)); } } }