for (int nChild = 0; nChild + 1 < getNumChildren(); nChild++)
for (int nChild = 0; nChild < getNumChildren(); nChild++)
    public void initiateConstrained()    {        latencySplitter = latencyGraph.addSplitter(this);        latencyJoiner = latencyGraph.addJoiner(this);        // register all children        for (int nChild = 0; nChild < getNumChildren(); nChild++)        {            StreamInterface child = getConstrainedChild(nChild);            latencyGraph.registerParent(child, this);            child.initiateConstrained();        }        // add all children to the latency graph        for (int nChild = 0; nChild + 1 < getNumChildren(); nChild++)        {            StreamInterface child = getConstrainedChild(nChild);            LatencyNode topChildNode = child.getTopLatencyNode();            LatencyNode bottomChildNode = child.getBottomLatencyNode();            //create the appropriate edges            LatencyEdge topEdge =                new LatencyEdge(latencySplitter, nChild, topChildNode, 0);            latencySplitter.addDependency(topEdge);            topChildNode.addDependency(topEdge);            LatencyEdge bottomEdge =                new LatencyEdge(bottomChildNode, 0, latencyJoiner, nChild);            latencyJoiner.addDependency(bottomEdge);            bottomChildNode.addDependency(bottomEdge);        }    }