public void fire() throws IllegalActionException { ObjectToken obj = (ObjectToken) lsp_old.get(0); Short[] arg1 = (Short[]) obj.getValue(); obj = (ObjectToken) lsp_mid.get(0); Short[] arg2 = (Short[]) obj.getValue(); obj = (ObjectToken) lsp_new.get(0); Short[] arg3 = (Short[]) obj.getValue(); Short[] arg4 = new Short[Cnst.MP1 * 4]; _int_lpc2(arg1, arg2, arg3, arg4); obj = new ObjectToken(arg4); A.broadcast(obj); }
public void fire() throws IllegalActionException { if (_state == RUNNING) { if (alfa.isKnown() && !emmode.isKnown()) { // if(alfa.isKnown()) { if (alfa.hasToken(0)) { double _alfa = ((DoubleToken) alfa.get(0)).doubleValue(); /* if(_count > 0) { // so atualiza se um evento true deu inicio _count++; }*/ if (Math.abs(_alfa) >= 0.10) { // tem um evento // _sensorCount++; // if(_count == 0) { // _count = 1; // } _count++; } else { _count = 0; } if (_count == 25) { emmode.broadcast(new Token()); System.out.println("Entering Emergency Mode"); _reset(); // uma vez setado o emmode, so na proxima.... } /* if(_count == 50) { // deu os 100ms if(_maxSensorCount >= 25 || _sensorCount >= 25) { emmode.broadcast(new Token()); System.out.println("Entering Emergency Mode"); _reset(); // uma vez setado o emmode, so na proxima.... } else { _count = 0; _sensorCount = 0; _maxSensorCount = 0; } } else { if(Math.abs(_alfa) >= 0.10) { // tem um evento _sensorCount++; if(_count == 0) { _count = 1; } } if((Math.abs(_alfa) < 0.1) && _count > 0) { // nao tem mais , e estava contando if(_sensorCount > _maxSensorCount) { _maxSensorCount = _sensorCount; } _sensorCount = 0; } } */ } } } if (alfa.isKnown() && !emmode.isKnown()) { emmode.broadcastClear(); } }