lastaddedfaultmodel.java

来自「Java遗传算法库」· Java 代码 · 共 65 行

JAVA
65
字号
/*
 * LastAddedFaultModel.java
 *
 * Created on 09 June 2002, 19:45
 */

package jaga.pj.circuits.fpgaft;

import jaga.pj.circuits.SimulatorCircuit;

import java.util.Vector;

/** Could add a memory loss variable to wipe out history now and then so it 
 * doesn't get filled..
 *
 * @author  Michael Garvie
 * @version 
 */
public class LastAddedFaultModel extends ConnectedElementsFaultModel {

    protected static final int DEF_NRFAULTS = 5;
    protected int nrFaults;
    protected Vector history = new Vector();
    protected int[] currFaults;
    
    /** Creates new LastAddedFaultModel */
    public LastAddedFaultModel ( SimulatorCircuit circuit, int nrOuts ) {
        this( circuit, nrOuts, DEF_NRFAULTS );
    }
    
    public LastAddedFaultModel ( SimulatorCircuit circuit, int nrOuts, int nrFaults ) {
        super( circuit, nrOuts );
        this.nrFaults = nrFaults;
        currFaults = new int[ nrFaults ];
    }
    
    public LastAddedFaultModel ( SimulatorCircuit circuit, int nrOuts, int nrFaults, int faultTypes ) {
        this( circuit, nrOuts, nrFaults );
        super.faultTypes = faultTypes;
    }
    
    protected void pushin( int x )
    {
        for( int i = nrFaults - 1; i > 0; i-- )
        {
            currFaults[ i ] = currFaults[ i - 1 ];
        }
        currFaults[ 0 ] = x;
    }

    public void reset()
    {
        super.reset();
        for( int el = 0; el < usedElements.length; el++ )
        {
            if( !history.contains( new Integer( usedElements[ el ] ) ) )
            {
                pushin( usedElements[ el ] );
                history.add( new Integer( usedElements[ el ] ) );
            }
        }
        usedElements = currFaults;
    }
    
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?