Skip to main content

Module

The module is one of the most important parts of the tool and provides a lot of flexibility to the system.

What does it do?

This service is used to setup the system within the scene on runtime. It triggers a host of services to setup and starts the simulation.

What can I do with it?

There are two main factors for the module service which has an impact on what it does; the module settings and the dependency injection.

Module Settings

info

Can be accessed via the menu bar at the top. CIVIL-AI-SYSTEM -> Module Settings

This is loaded on start and is used to change how the system is setup. This can have an impact in a number of ways which can include loading different versions of structure types, omitting certain systems or changing starting values.

Dependency Injection

This is a method of reducing the hardcoded dependencies between objects by using interfaces. When this is supported there is a need to initialise classes to use the right version of the class and/or to setup factories to allow for them to be selected at runtime. This is all supported within the tool and is done from the module service.