user-guide:additional_interfaces
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
user-guide:additional_interfaces [2025/01/16 11:25] – [HTTP Server] Tim | user-guide:additional_interfaces [2025/06/04 12:40] (current) – tim2 | ||
---|---|---|---|
Line 13: | Line 13: | ||
For example with the graphical user interface windows and panels are used for this communication: | For example with the graphical user interface windows and panels are used for this communication: | ||
- | < | + | <uml> |
+ | !pragma teoz true | ||
+ | @startuml | ||
hide footbox | hide footbox | ||
+ | title GUI | ||
participant User | participant User | ||
participant " | participant " | ||
Line 23: | Line 25: | ||
User -> GroIMP: Start GroIMP | User -> GroIMP: Start GroIMP | ||
gui< | gui< | ||
- | User <-> gui | + | & User <-> gui |
@enduml</ | @enduml</ | ||
- | ====== Headless mode ====== | + | If you are not sure what interface you need for your application you can consider the following page: [[user-guide: |
- | GroIMP can be started without its graphical interface, in headless. The headless mode executes a provided model and afterwards closes GroIMP. Capturing any feedback from the simulation must be included in the model. | + | ====== |
- | <uml> | + | {{namespace>user-guide: |
- | @startuml | + | |
- | hide footbox | + | |
- | title Headless | + | |
- | User -> GroIMP: Start GroIMP with model | + | ====== |
- | GroIMP -> User: Print log & close GroIMP | + | |
- | @enduml | + | |
- | </ | + | |
+ | **<color # | ||
- | More information on the headless mode: | + | GroIMP can be started as a server. Then, other instances of GroIMP can connect to the GroIMP server. This enables multiple user concurrently accessing a single model from different devices |
- | * [[: | + | |
- | * [[: | + | |
- | A tutorial: | + | <uml> |
- | * [[: | + | @startuml |
- | + | !pragma teoz true | |
- | + | ||
- | + | ||
- | ====== Command Line Interface ====== | + | |
- | + | ||
- | GroIMP can be started without its graphical interface, with a CLI. Unlike the Headless mode, the CLI enables interaction with the model during run time including opening and closing models, running simulations, | + | |
- | + | ||
- | < | + | |
hide footbox | hide footbox | ||
+ | title GroIMP server | ||
participant User | participant User | ||
- | participant "Interactive command line" as cli | + | participant "client GroIMP" as g1 |
- | participant GroIMP | + | participant |
- | User -> GroIMP: | + | User -> g2: starts server side GroIMP |
- | cli<-> GroIMP | + | User -> g1: starts client |
- | User <-> cli | + | User <->g1 |
+ | & g1< | ||
+ | User -> g1: stops client | ||
+ | User -> g2: stops server side GroIMP | ||
@enduml</ | @enduml</ | ||
- | |||
- | More documentation on the CLI: | ||
- | * [[: | ||
- | * [[: | ||
- | |||
- | A tutorial: | ||
- | * [[: | ||
- | |||
- | ====== HTTP Server ====== | ||
- | |||
- | It is possible to start GroIMP as a HTTP server to then send model paths via HTTP for GroIMP to execute. | ||
- | After GroIMP executed the model values can be returned to the HTTP client who send the request. It is possible to send several models in series or in parallel. | ||
- | |||
- | < | ||
- | hide footbox | ||
- | title HTTP server | ||
- | |||
- | User -> GroIMP: Start GroIMP | ||
- | User -> GroIMP: Send Model-path | ||
- | GroIMP -> User: Return result | ||
- | User -> GroIMP: Close GroIMP | ||
- | |||
- | @enduml</ | ||
- | |||
- | |||
- | More information: | ||
- | * [[: | ||
- | * [[: | ||
- | Tutorial: | ||
- | * [[: | ||
- | |||
- | ====== Application Programming Interface ====== | ||
- | |||
- | GroiMP can be started as an API to be used from other software (e.g. Python, R, ...). | ||
- | |||
- | More information on the API: | ||
- | * [[: | ||
- | * [[https:// | ||
- | * [[: | ||
- | * [[https:// | ||
- | |||
- | Tutorials: | ||
- | * [[: | ||
- | * [[: | ||
- | * [[: | ||
- | * [[: | ||
- | * [[: | ||
- | |||
- | Existing examples: | ||
- | * [[https:// | ||
- | * [[https:// | ||
- | * [[https:// | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | ====== GroIMP Server ====== | ||
- | |||
- | GroIMP can be started as a server. Then, other instances of GroIMP can connect to the GroIMP server. This enables multiple user concurrently accessing a single model from different devices. | ||
- | |||
More information: | More information: | ||
* [[: | * [[: | ||
Line 140: | Line 70: | ||
- | Parts of the GreenLab model were reimplemented in the language XL. As the basis, the implementation of the GreenLab model in the software [[http:// | + | Parts of the GreenLab model were reimplemented in the language XL with additional panels in the GUI. |
+ | As the basis, the implementation of the GreenLab model in the software [[http:// | ||
More information on the Greenlab plugin: | More information on the Greenlab plugin: | ||
Line 147: | Line 78: | ||
A tutorial: | A tutorial: | ||
* [[: | * [[: | ||
+ | * [[https:// | ||
user-guide/additional_interfaces.1737023146.txt.gz · Last modified: 2025/01/16 11:25 by Tim