package org.lucci.madhoc.simulation.monitor.sensor;

import org.lucci.madhoc.simulation.MadhocSimulation;
import org.lucci.madhoc.simulation.measure.NaturalNumberSensor;
import org.lucci.madhoc.simulation.measure.Unit;
import org.lucci.madhoc.simulation.projection.Projection;

/*
 * Created on Jul 6, 2004
 */

/**
 * @author luc.hogie
 */
public class ConnectionsUpdateDuration extends NaturalNumberSensor
{
    /* (non-Javadoc)
     * @see org.lucci.madhoc.simulation.Measure#getName()
     */
    public String getName()
    {
        return "connections update duration";
    }

    /* (non-Javadoc)
     * @see org.lucci.madhoc.simulation.measure.NumericalMeasure#getUnit()
     */
    public Unit getUnit()
    {
        return Unit.SECOND;
    }

    @Override
    public Double takeNewDoubleValue(Projection projection)
    {
        // TODO Auto-generated method stub
        MadhocSimulation simulation = (MadhocSimulation) projection.getNetwork().getSimulation();

        if (simulation.getConnectionsUpdateDuration() == -1)
        {
            return null;
        }
        else
        {
            return simulation.getConnectionsUpdateDuration() / 1000d;
        }
    }

}