summaryrefslogtreecommitdiff
path: root/TAO/examples/Simulator/README
blob: dec55fdede1474d3c68a57cf943ad570fc0c2198 (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$

Documentation for the Simulator/DOVE demo

Purpose: To show how the event service can be used to as a media to 
         transport monitoring events including data. 

Application: The events contain C++ structs with avionics information.
             They are supllied by sensors of an avionic and are
             consumed by an JAVA applet running on a different machine and/or
             location. The collected metrics are displayed in
	     JAVA Beans.

Implementation: A C++ Supplier pushes events containing a
            navigation or weapons struct to the Event Service.
            The Event Service dispatches the events to any number of
            Consumers which are implemented in JAVA. The JAVA
            consumer extracts the data of the structs and dispatches
            it to various display components.


For more informations refer to:
	$TAO_ROOT/docs/releasenotes/index.html


Requirements: 
           C++ compiler, TAO environment, Visibroker 3.2 for JAVA

!!RELEASE CHANGES: 
	- Visibroker 3.2 instead of 3.1 (new naming conventions)
	- No more customization of the RtecEventCommC.h file (bug is fixed)
        - A different Weapons struct is now used, but it does not influence
          the functionality.

Files:
     Common:
        ss   - restart Naming Service, connect the Event Service and
               Scheduling service with this Naming Service
        NavWeap.idl - IDL definition of the Weapons and Navigation struct
        README - this readme file

     Supplier: (in directory  $TAO_ROOT/orbsvcs/tests/Simulator/Event_Supplier/)
        Event_Sup.cpp - Event Supplier
        Event_Sup.h   - Event Supplier class definition
        Makefile      - Event Supplier Makefile
        (Event_Con.cpp, Event_Con.h - Event Consumer for testing)
	svc.conf - helper file


     Consumer, DOVEBrowswer: (in directory  $TAO_ROOT/orbsvcs/tests/Simulator/DOVEBrowser/)
	AnswerEvent.java  - Having my own Events
	AnswerListener.java - Listener for these Events
	DataHandler.java  - Base class for all Data Handlers
	DemoCore.java - Core of the Demo to connect Observables with Observers
	DemoObservable.java - Base class for Observables
	DoubleVisComp.java  - Visualization Component (will be a JavaBean) for Doubles
	DOVEBrowser.java - Wrapper around DemoCore
	NS_Resolve.java  - Resolving the inital reference to the Naming Service
	NavWeapDataHandler.java  - Specialized Data Handler for Navigation and Weapon data
	NavigationVisComp.java - Visualization Component (... JavaBean) for Navigation data
	ObservablesDialog.java - Dialog window for connecting Observables with OBservers
	Properties.java	- constant definitons
	PushConsumer.java - Event Service Push Consumer
	PushConsumerFactory.java - Factory for the Consumer
	Queue.java - Queue for the DoubleVisComp 
	VisComp.java - Base class for the Visualization Components
	WeaponsVisComp.java - Visualization Component for Weapons


Compiling:
    Supplier: in directory  $TAO_ROOT/orbsvcs/tests/Simulator/Event_Supplier/

       cp ../NavWeap.idl .

       "make sure that the following definition is in the 
          $TAO_ROOT/orbsvcs/orbsvcs/RtecEventComm.idl"
              
           struct EventData {
                long x;
                long y;
                any any_value;
            };

       "compile $TAO_ROOT/orbsvcs/orbsvcs"
       "compile $TAO_ROOT/orbsvcs/Event_Service"
       "compile $TAO_ROOT/orbsvcs/Naming_Service"
       "compile $TAO_ROOT/orbsvcs/Scheduling_Service"

       make



    DOVE Browser: in directory $TAO/orbsvcs/tests/Simulator/DOVEBrowser/.)
       cp ../NavWeap.idl .
       cp $TAO_ROOT/orbsvcs/orbsvcs/CosNaming.idl .
       cp $TAO_ROOT/orbsvcs/orbsvcs/CosTimeBase.idl . 
       cp $TAO_ROOT/orbsvcs/orbsvcs/RtecEventChannelAdmin.idl . 
       cp $TAO_ROOT/orbsvcs/orbsvcs/RtecEventComm.idl . 
       cp $TAO_ROOT/orbsvcs/orbsvcs/RtecScheduler.idl .
       idl2java *.idl

       vbjc *.java
       
Starting:
     Start in the following order:
	Naming Service
	Scheduling Service
	Event Service

     Supplier:
       Event_Sup -ORBport 10040 -f MLF.dat -m 1000
		// -m 1000 for 1000 events sent by the supplier
		// -f MLF.dat to read scheduling data from this file as input 

     DOVE Browser:
       vbj DOVEBrowser