Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Model holds all the abstract definitions that composes a System – Transmitter, Receiver, Antenna, Propagation model, Distribution, etc.;
  • Application implements the SEAMCAT UI, simulations, Propagation Models, and basically ties everything together. We will descuss this structure in more detail later.

Image RemovedImage Added

Anchor
F304
F304
Figure 304: Modules of SEAMCAT

Inside a module we organize organise the software files in packages. It is similar to a folder and like a folder it contains the individual source code files. The names of the packages is helpful when nagivating the source code.

The packages of the model module.:

  • The names can be helpful when navigating the source code:;
  • Cellular and generic contains the definitions for the cellular and generic systems;
  • Plugin holds the plugin definition for the mentioned types (Eventprocessing, Coverageradius, propagation etc…);
  • Distribution, functions, and mathematics holds the distributions and other helper functions;
  • Simulation and types holds the simulation results and general type definitions (Antenna, Receiver, RadioSystem, etc).

 


The packages of Application is more messy than the model. So here it is harder to know exactly where to go. The packages to know here is: scenario and simulation.:

  • Scenario contains the implementation of some of the types defined in Model;
  • Similarly with simulation: here are the specific simulations e.g. CDMADownlinkVictimSimulation.

...


It is the very nature of code to change, but with a good design and understanding of the abstractions it should be easy to identify part that will change the least. Most of the dynamic parts of the code can be examined with runtime inspection by software development tools. Mechanism vs Policy is a software principle based on the fact that mechanism change infrequently whereas policies change all the time.

Mechanism is here the engine of SEAMCAT and policies are the plugins. The parts that changes behaviour are left open for developers.

Image Removed

Image Added

Image Removed

Image Added

Anchor
F305
F305
Figure 305: Packages of Model
Anchor
F306
F306
Figure 306: Packages of Application

 

...