Fundamentals | Fundamental library classes. The most important ones are: |
Model Components | Classes in this group make up static components of the simulation model |
Simulation Programming | Classes in this group are essential to writing OMNeT++ simulation models |
Simulation Core | Simulation infrastructure that makes DES work |
Simulation Time | The simulation kernel and models use simtime_t to represent simulation time. simtime_t is an alias to the SimTime class that is 64-bit fixed-point representation with a globally shared exponent. This group describes simtime_t, SimTime, and related types and macros |
▼Random Number Generation | Distributions |
Utility functions | Utility functions |
Continuous Distributions | Random variate generators for continuous distributions |
Discrete Distributions | Random variate generators for discrete distributions |
Statistical Result Collection | The primary way of recording statistics from simulations is by means of signals and declared statistics, i.e. using @statistic properties in NED files. However, the simulation library also provides some classes in case programmatic result collection is needed |
Result Filters and Recorders | Result filters and recorders are objects that participate in declarative statistics recording via @statistic properties in NED files |
Expression Evaluation | Classes related to evaluating generic/arithmetic expressions and match expressions |
Canvas (2D Graphics) | OMNeT++ provides a 2D figure-based drawing API. The central classes are cFigure and cCanvas |
OSG/osgEarth Support (3D Graphics) | OMNeT++ provides support for 3D visualization of simulation scenes, with the help of the OpenSceneGraph and osgEarth libraries. Assemble an OSG scene and give it to a cOsgCanvas for visualization |
FSM Support | Macros and classes for writing Finite State Machines. An FSM is defined with the FSM_Switch() macro |
Simulation Signals | Simulation signals (or just signals) provide a way of publish-subscribe communication for models. Signals are represented by the type simsignal_t, are emitted on a module or channel using cComponent::emit(), and propagate up in the module tree. At any level, one may add listeners (cIListener) with cComponent::subscribe() |
Logging | OMNeT++ provides a logging mechanism for models, with support for log levels, filtering, a configurable log prefix, and more |
Miscellaneous | Miscellaneous types |
WATCH Macros | WATCH macros make normal variables show up in Qtenv inspectors |
Registration Macros | Macros for registering various classes, functions and other extension items with the simulation kernel. Registration is necessary for allowing instantiation by class name and attaching meta-information |
String Functions | Miscellaneous string-related utility functions |
Utility Functions | This group is a collection of miscellaneous utility functions |
▼Envir and Extensions | Simulations take input in the form of parameters and configuration settings, and produce various outputs such as statistical results, log, etc. Implementations of such input and output facilities are not part of the simulation core (cSimulation,etc.), but instead, they are delegated to the "environment" of the simulation, represented by the cEnvir interface. The Envir library (src/envir) contains the default implementation of cEnvir |
Predefined configuration variables | Predefined configuration variables; see cConfigurationEx::getVariable(). Variables can be referred to using the ${...} syntax in the configuration |
Internal Classes | The classes described here are used internally by the simulation kernel. They are normally of very little interest to the simulation programmer. Note that although these internal classes do have a documented API, they may change more often than other classes, simply because they are not used in simulation models and thus backwards compatibility is less important |
Parallel Simulation Extension | Classes in this group belong to the parallel simulation feature. For more information, please see the separate Parallel Simulation API which is generated from the source files in the src/sim/parsim directory |