FreeWRL / FreeX3D 4.3.0
EventOut.java
1// Specification of the base interface for all eventOut types.
2package vrml.external.field;
3import vrml.external.Browser;
4//JAS import vrml.external.field.FieldTypes;
5
6public class EventOut {
7
8 public int EventType = FieldTypes.UnknownType;
9 public String inNode; // Node to send the command to... NULL if not
10 public String RLreturn;
11 public String command; // the actual command...
12 public int nodeptr =0; //pointer to start of FreeWRL structure in memory
13 public int offset = 0; //offset of actual field in memory from base.
14 public int datasize = 0; // how long this data really is
15 public String datatype;
16 public int ScriptType = 0; // non zero indicates sending to a javascript
17
18
19 //Get the type of this EventOut (specified in FieldTypes.java)
20 public int getType() {
21 return EventType;
22 }
23
24 public int getIntType() {
25 return EventType;
26 }
27
28 // Mechanism for setting up an observer for this field.
29 // The EventOutObserver's callback gets called when the
30 // EventOut's value changes.
31 public void advise(EventOutObserver f, Object userData) {
32
33 Browser.RegisterListener (f, userData, nodeptr,offset,datatype , datasize, EventType);
34 return;
35 }
36
37 // terminate notification on the passed EventOutObserver
38 public void unadvise(EventOutObserver f) {
39
40 Browser.unRegisterListener (f, nodeptr,offset,datatype , datasize, EventType);
41 return;
42 }
43}