The java version of SimNet followed the outline of the original pascal where 'record' structures and their corresponding 'with' clauses identified objects. Pascal's hierarchal structure has been imitated by inheriting one class, simulator, into other pascal objects.
Simulator
This implements a event-oriented discrete simulator.
Simulator. Holds global state. Manages the event queue. Defines utility functions like debugging trace and random number generators. github
EventBlock. Linked together to make the event queue. Includes the event dispatcher. github
SimNet Initialize and run the legacy simulator. Reads network topology and initial routing tables from a text file. github
Network
This implements the network nodes, the messages they pass, and a model of the radio channels that carry them.
Station. Queues messages until they can be routed to neighbors. Exchanges load information used to update routes. github
Message. Represents a message in transit through the network. Links with other messages queued at a station. A data object. github
Plots
This is the legacy batch line printer plotting package.
Graph. A time series. Reports count, max, mean and standard deviation. github
Scatter. A correlation of two attributes of events. Reports mean for each attribute. github
Interactive
SimView. Creates an interactive map view, shows traffic and queuing, drag to explore routing tables.
SimTestPoint. Creates a web server that provides live access to simulator and interactive state.