Browse Source

explicit.DTMCFromMDPAndMDStrategy: simplify getTransitionsIterator, provide forEachTransition specialization

git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@12094 bbc10eb1-c90d-0410-af57-cb519fbb1720
master
Joachim Klein 9 years ago
parent
commit
3fbc7903dc
  1. 32
      prism/src/explicit/DTMCFromMDPAndMDStrategy.java

32
prism/src/explicit/DTMCFromMDPAndMDStrategy.java

@ -29,7 +29,6 @@ package explicit;
import java.util.*;
import java.util.Map.Entry;
import common.IterableStateSet;
import explicit.rewards.MCRewards;
import parser.State;
import parser.Values;
@ -173,29 +172,20 @@ public class DTMCFromMDPAndMDStrategy extends DTMCExplicit
return mdp.getTransitionsIterator(s, strat.getChoiceIndex(s));
} else {
// Empty iterator
return new Iterator<Entry<Integer, Double>>()
{
@Override
public boolean hasNext()
{
return false;
}
@Override
public Entry<Integer, Double> next()
{
return null;
}
@Override
public void remove()
{
throw new UnsupportedOperationException();
}
};
Map<Integer,Double> empty = Collections.emptyMap();
return empty.entrySet().iterator();
}
}
@Override
public void forEachTransition(int s, TransitionConsumer c)
{
if (!strat.isChoiceDefined(s)) {
return;
}
mdp.forEachTransition(s, strat.getChoiceIndex(s), c::accept);
}
@Override
public double mvMultSingle(int s, double vect[])
{

Loading…
Cancel
Save