📄 connectedelementsfaultmodel.java
字号:
/*
* ConnectedElementsFaultModel.java
*
* Created on 09 June 2002, 19:02
*/
package jaga.pj.circuits.fpgaft;
import jaga.pj.circuits.SimulatorCircuit;
import jaga.pj.circuits.CircuitsLib;
import jaga.pj.circuits.SimulatorLogicElement;
import java.util.Vector;
import java.awt.Point;
/**
*
* @author Michael Garvie
* @version
*/
public class ConnectedElementsFaultModel implements SingleFaultModel {
protected SimulatorCircuit circuit;
protected int nrOuts;
protected int faultTypes = 2;
protected int[] usedElements;
protected int currFaultType = 0;
protected int currPos = 0;
/** Creates new ConnectedElementsFaultModel */
public ConnectedElementsFaultModel ( SimulatorCircuit circuit, int nrOuts ) {
this.circuit = circuit;
this.nrOuts = nrOuts;
}
/** Creates new ConnectedElementsFaultModel */
public ConnectedElementsFaultModel ( SimulatorCircuit circuit, int nrOuts, int faultTypes ) {
this( circuit, nrOuts );
this.faultTypes = faultTypes;
}
/** Resets the sequence of faults
*/
public void reset ()
{
SimulatorLogicElement[] elements = circuit.getElements();
Vector added = CircuitsLib.addConnectedGates( elements, nrOuts );
int circuitSize = added.size();
usedElements = new int[ circuitSize ];
for( int el = 0; el < circuitSize; el++ )
{
usedElements[ el ] = jaga.ESLib.indexOf( added.get( el ), elements );
}
currFaultType = currPos = 0;
}
public boolean hasMoreElements ()
{
return currPos < usedElements.length;
}
public java.lang.Object nextElement ()
{
java.awt.Point rv = new java.awt.Point( usedElements[ currPos ], currFaultType++ );
if( currFaultType == faultTypes )
{
currFaultType = 0;
currPos++;
}
return rv;
}
public String toString()
{
String rv = "Connected Elements Fault Model with:";
rv += "\n Fault Types = " + faultTypes;
return rv;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -