Changeset 23 for trunk


Ignore:
Timestamp:
04/14/11 13:22:26 (14 years ago)
Author:
sherbold
Message:

+ added functionality to get a tree represenation of the Trie

Location:
trunk/EventBenchCore/src/de/ugoe/cs/eventbench
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/EventBenchCore/src/de/ugoe/cs/eventbench/data/Event.java

    r16 r23  
    5252                        } else { 
    5353                                return type.equals(otherEvent.type) 
    54                                         && target==otherEvent.target; 
     54                                        && otherEvent.target==null; 
    5555                        } 
    5656                } else { 
     
    7272                if (targetShort!=null) { 
    7373                        shortId = targetShort+"."+getType(); 
    74                         if (idInfo!="") { 
     74                        if ( !"".equals(idInfo)) { 
    7575                                shortId += "."+idInfo; 
    7676                        } 
     
    8787                } 
    8888                id += getType(); 
    89                 if ( idInfo!="" ) { 
     89                if ( !"".equals(idInfo) ) { 
    9090                        id += "." + idInfo; 
    9191                } 
  • trunk/EventBenchCore/src/de/ugoe/cs/eventbench/models/Trie.java

    r19 r23  
    11package de.ugoe.cs.eventbench.models; 
    22 
    3 import java.awt.Dimension; 
    4 import java.awt.Rectangle; 
    5 import java.awt.Shape; 
    63import java.util.LinkedHashSet; 
    74import java.util.LinkedList; 
     
    96import java.util.Set; 
    107 
    11 import javax.swing.JFrame; 
    12  
    13 import org.apache.commons.collections15.Transformer; 
    14  
    15  
    16 import edu.uci.ics.jung.algorithms.layout.Layout; 
    17 import edu.uci.ics.jung.algorithms.layout.TreeLayout; 
    188import edu.uci.ics.jung.graph.DelegateTree; 
    199import edu.uci.ics.jung.graph.Tree; 
    20 import edu.uci.ics.jung.visualization.BasicVisualizationServer; 
    21 import edu.uci.ics.jung.visualization.decorators.ToStringLabeller; 
    22 import edu.uci.ics.jung.visualization.renderers.Renderer.VertexLabel.Position; 
    2310 
    2411public class Trie<T> { 
     
    155142        } 
    156143         
    157         private Tree<TrieVertex, Edge> getGraph() { 
     144        protected Tree<TrieVertex, Edge> getGraph() { 
    158145                DelegateTree<TrieVertex, Edge> graph = new DelegateTree<TrieVertex, Edge>(); 
    159146                rootNode.getGraph(null, graph); 
    160147                return graph; 
    161         } 
    162          
    163         public void display() { 
    164                 Tree<TrieVertex, Edge> graph = this.getGraph(); 
    165                 Layout<TrieVertex, Edge> layout = new TreeLayout<TrieVertex, Edge>(graph, 60); 
    166                 // The BasicVisualizationServer<V,E> is parameterized by the edge types 
    167                 BasicVisualizationServer<TrieVertex,Edge> vv = 
    168                 new BasicVisualizationServer<TrieVertex,Edge>(layout); 
    169                 vv.setPreferredSize(new Dimension(1100,850)); //Sets the viewing area size 
    170                  
    171                  
    172                 final Rectangle rect = new Rectangle(40, 20); 
    173                          
    174                 Transformer<TrieVertex, Shape> vertexShapeTransformer = 
    175                         new Transformer<TrieVertex, Shape>() { 
    176                                 public Shape transform(TrieVertex s) { 
    177                                         return rect; 
    178                                 } 
    179                 }; 
    180                 vv.getRenderer().getVertexLabelRenderer().setPosition(Position.CNTR); 
    181                 vv.getRenderContext().setVertexShapeTransformer(vertexShapeTransformer); 
    182                 vv.getRenderContext().setVertexLabelTransformer(new ToStringLabeller<TrieVertex>()); 
    183                  
    184                 JFrame frame = new JFrame("Trie"); 
    185                 frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE); 
    186                 frame.getContentPane().add(vv); 
    187                 frame.pack(); 
    188                 frame.setVisible(true); 
    189148        } 
    190149         
  • trunk/EventBenchCore/src/de/ugoe/cs/eventbench/models/TrieBasedModel.java

    r19 r23  
    66 
    77import de.ugoe.cs.eventbench.data.Event; 
     8import de.ugoe.cs.eventbench.models.Trie.Edge; 
     9import de.ugoe.cs.eventbench.models.Trie.TrieVertex; 
     10import edu.uci.ics.jung.graph.Tree; 
    811 
    912public abstract class TrieBasedModel implements IStochasticProcess { 
     
    6972                return sequence; 
    7073        } 
     74         
     75        public Tree<TrieVertex, Edge> getTrieGraph() { 
     76                return trie.getGraph(); 
     77        } 
    7178 
    7279        @Override 
Note: See TracChangeset for help on using the changeset viewer.