RLPark 1.0.0
Reinforcement Learning Framework in Java

Parser.java

Go to the documentation of this file.
00001 package zephyr.plugin.core.api.internal.monitoring.helpers;
00002 
00003 import zephyr.plugin.core.api.internal.codeparser.codetree.ClassNode;
00004 import zephyr.plugin.core.api.internal.codeparser.codetree.CodeTrees;
00005 import zephyr.plugin.core.api.internal.codeparser.interfaces.CodeParser;
00006 import zephyr.plugin.core.api.internal.codeparser.parsers.CodeTreeParser;
00007 import zephyr.plugin.core.api.internal.monitoring.abstracts.DataMonitorAdapter;
00008 import zephyr.plugin.core.api.internal.monitoring.abstracts.MonitorContainerNode;
00009 import zephyr.plugin.core.api.internal.monitoring.abstracts.MonitoredDataTraverser;
00010 import zephyr.plugin.core.api.monitoring.abstracts.DataMonitor;
00011 import zephyr.plugin.core.api.monitoring.abstracts.Monitored;
00012 
00013 public class Parser {
00014   public static void parse(final DataMonitor dataMonitor, Object toParse, int levelRequired) {
00015     DataMonitorAdapter monitorAdapter = new DataMonitorAdapter() {
00016       @Override
00017       public void add(MonitorContainerNode codeNode) {
00018         String codePath = CodeTrees.mergePath(codeNode);
00019         String[] labels = codeNode.createLabels();
00020         Monitored[] monitored = codeNode.createMonitored();
00021         for (int i = 0; i < monitored.length; i++)
00022           dataMonitor.add(codePath + labels[i], monitored[i]);
00023       }
00024     };
00025     MonitoredDataTraverser traverser = new MonitoredDataTraverser(monitorAdapter, levelRequired);
00026     CodeParser codeParser = new CodeTreeParser(levelRequired);
00027     ClassNode classNode = new ClassNode("", null, null, null);
00028     codeParser.parse(classNode, toParse, null);
00029     CodeTrees.traverse(traverser, classNode);
00030   }
00031 }
 All Classes Namespaces Files Functions Variables Enumerations
Zephyr
RLPark