Examples¶
Suggested learning path¶
Work through these in order. Each step builds on the previous one.
1. Understand the concepts¶
Read Mental Model and Main Concepts.
2. Create your first package¶
Follow Create your first package to generate a skeleton, compile it, and run it under a Sen kernel.
3. Work through the examples¶
The examples are numbered and ordered by complexity. Follow them in sequence:
| # | Example | What you learn |
|---|---|---|
| 1 | Calculators | Basic package, multiple implementations, shell interaction |
| 2 | Inheritance | STL inheritance, template injection |
| 3 | Aircraft | HLA FOMs, update() loop, virtual time |
| 4 | School | Object discovery, events, multi-component |
| 6 | Recorder | Recording, Python post-processing |
| 7 | Replayer | Replay with real-time and stepped execution |
| 8 | InfluxDB | Grafana visualisation |
| 9 | HLA Servers | Request/response servers |
| 10 | Python | Embedded Python scripting |
| 11 | Shapes | Interest management, Sen Query Language |
| 12 | Fibonacci | Deferred methods, load balancing |
| 13 | Timer | Checked properties, state validation |
4. Go deeper with the how-to guides¶
Once you are comfortable with the examples, the How-To Guides cover specific topics in depth: working with objects, generated code, logging, dead reckoning, and more.
Reference material¶
- STL language reference - full syntax of the Sen Type Language
- Command Line reference -
sen run,sen shell, YAML config schema - Sen Query Language - filtering objects with SQL-like expressions