From 1f9585086962e223af3d72d4f3e8d5ae002bba24 Mon Sep 17 00:00:00 2001 From: Dave Parker Date: Fri, 24 Nov 2006 13:56:39 +0000 Subject: [PATCH] Added functions to query number of state/transition reward items. git-svn-id: https://www.prismmodelchecker.org/svn/prism/prism/trunk@167 bbc10eb1-c90d-0410-af57-cb519fbb1720 --- prism/src/parser/RewardStruct.java | 21 ++++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/prism/src/parser/RewardStruct.java b/prism/src/parser/RewardStruct.java index 884a7b6b..d05083c7 100644 --- a/prism/src/parser/RewardStruct.java +++ b/prism/src/parser/RewardStruct.java @@ -28,8 +28,10 @@ import prism.PrismException; public class RewardStruct { - private String name; // name (optional) - private Vector items; // list of items + private String name; // name (optional) + private Vector items; // list of items + private int numStateItems; // how may of the items are state rewards + private int numTransItems; // how may of the items are transition rewards // constructor @@ -37,6 +39,8 @@ public class RewardStruct { name = ""; items = new Vector(); + numStateItems = 0; + numTransItems = 0; } public void setName(String n) @@ -48,12 +52,13 @@ public class RewardStruct public void addItem(String synch, Expression states, Expression reward) { - items.add(new RewardStructItem(synch, states, reward)); + addItem(new RewardStructItem(synch, states, reward)); } public void addItem(RewardStructItem rsi) { items.add(rsi); + if (rsi.isTransitionReward()) numTransItems++; else numStateItems++; } // get methods @@ -68,6 +73,16 @@ public class RewardStruct return items.size(); } + public int getNumStateItems() + { + return numStateItems; + } + + public int getNumTransItems() + { + return numTransItems; + } + public RewardStructItem getRewardStructItem(int i) { return (RewardStructItem)items.elementAt(i);