package iwocs.graphs.propagation;

import java.util.ArrayList;
import java.util.List;

public class PropagationInfos {
    private int nbSteps;
    private List<PropagationStepInfos> steps;

    /**
     * Basic constructor.
     */
    public PropagationInfos() {
        this.nbSteps = 0;
        this.steps = new ArrayList<>();
    }

    /**
     * Adds a step's infos to the steps list.
     * @param stepInfos the infos to add.
     */
    public void addStep(PropagationStepInfos stepInfos) {
        this.steps.add(stepInfos);
        this.nbSteps++;
    }

    /**
     * Get the infos of a given step.
     * @param noStep the step's number.
     * @return the infos of the given step.
     */
    public PropagationStepInfos getStep(int noStep) {
        return this.steps.get(noStep);
    }

    /**
     * @return the nbSteps
     */
    public int getNbSteps() {
        return nbSteps;
    }

    /**
     * @return the steps
     */
    public List<PropagationStepInfos> getSteps() {
        return steps;
    }
}