RLPark 1.0.0
Reinforcement Learning Framework in Java

MonitoredDataTraverser.java

Go to the documentation of this file.
00001 package zephyr.plugin.core.api.internal.monitoring.abstracts;
00002 
00003 import zephyr.plugin.core.api.internal.codeparser.interfaces.CodeNode;
00004 import zephyr.plugin.core.api.internal.codeparser.interfaces.ParentNode;
00005 import zephyr.plugin.core.api.internal.codeparser.interfaces.Traverser;
00006 
00007 public class MonitoredDataTraverser implements Traverser, MonitorParser {
00008   private final DataMonitorAdapter monitorAdapter;
00009   private final int levelRequired;
00010   public static final int MonitorEverythingLevel = Integer.MAX_VALUE;
00011 
00012   public MonitoredDataTraverser(DataMonitorAdapter monitorAdapter, int levelRequired) {
00013     this.monitorAdapter = monitorAdapter;
00014     this.levelRequired = levelRequired;
00015   }
00016 
00017   @Override
00018   public boolean inNode(CodeNode codeNode) {
00019     if (codeNode.level() > levelRequired)
00020       return false;
00021     if (codeNode instanceof ParentNode)
00022       return true;
00023     if (codeNode instanceof MonitorContainerNode)
00024       monitorAdapter.add((MonitorContainerNode) codeNode);
00025     return false;
00026   }
00027 
00028   @Override
00029   public void outNode(CodeNode codeNode) {
00030   }
00031 }
 All Classes Namespaces Files Functions Variables Enumerations
Zephyr
RLPark