summaryrefslogtreecommitdiff
path: root/TAO/examples/Simulator/Sim_Display/Display_Client.java
blob: d7140d54c3d1895562d0c0c2ef9eeb9d7bbf6738 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
// $Id$ 

/**
  * This class pulls the structured simulation data from a socket and
  * funnels it into the display.
  *
  * @author Seth Widoff
  * @version $Id$
  * modified by Michael Kircher on 1998/02/19
  */

import java.util.*;
import java.awt.*;

class Display_Frame extends Frame
{
  MenuBar menubar_;
  Menu menu_quit_;
  MenuItem menu_quit_item_;

  public Display_Frame ()
    {
      super ();
      menubar_ = new MenuBar ();
      menu_quit_ = new Menu ("Quit");
      menu_quit_item_ = new MenuItem ("Quit");
      menu_quit_item_.enable ();
      menu_quit_.add (menu_quit_item_);
      menubar_.add (menu_quit_);

      setMenuBar (menubar_);
    }


 
  public boolean action (Event e, Object arg)
    {
      System.out.println ("action occured");
      if (e.target == menu_quit_item_)
	{
	  System.exit (0);
	  return true;
	}
      return false;
    }

}


public class Display_Client // extends java.applet.Applet
{
  public final static int DEFAULT_PORT = 5555;
  
  public final static String CPU_USAGE = "CPU Usage (%)",
    LATENCY = "Latency (ms)",
    JITTER = "Jitter (ms)",
    OVERHEAD = "Overhead (%)",
    DEADLINES = "Missed Deadlines (#)";
  
  
public synchronized void paint (Graphics g) {}

  public void init () 
    {

      String art_hor_name =
	Display_Object_Factory.resolve_name
	(Display_Object_Factory.ART_HORIZON_ENUM);
      String weapons_name =
	Display_Object_Factory.resolve_name
	(Display_Object_Factory.WEAPONS_ENUM);
      
      display.add_metric (CPU_USAGE, 1);
      display.add_metric (OVERHEAD, 1);
      display.add_metric (JITTER, 10);
      display.add_metric (LATENCY, 10);
      display.add_metric (DEADLINES, 2);
      display.add_simulator (weapons_name);
      display.add_simulator (art_hor_name);

      display_consumer = new Display_Consumer (display); //, this.getParameter("NS_IOR"), this);
      Dimension ss = Toolkit.getDefaultToolkit ().getScreenSize ();

      sim_frame.setResizable (false);
      sim_frame.setTitle ("Scheduler Demo");
      sim_frame.setBounds (ss.width/2 - 275, ss.height/2 - 275, 700, 700);
      sim_frame.setLayout (new BorderLayout ());
      sim_frame.add ("Center", display);

      sim_frame.show ();
      
      display_consumer.run ();
    }
 


  public Display_Client ()
    {
      sim_frame = new Display_Frame ();
      display = new Display ();

    }
  
  private Frame sim_frame;
  private Display display;
  private Display_Consumer display_consumer;

  public static void main (String[] args)
    {
      
      Display_Client display_client_ = new Display_Client ();
      display_client_.init ();
    }
}