Split RefTopologyAppAi

65 views
Skip to first unread message

Ugo Levi

unread,
May 27, 2021, 11:21:21 AM5/27/21
to F´ Community Group

Hello,

Is there a way to split the RefTopologyAppAi.xml file into several pieces in the same way that commands, events, parameters can be split in the Components ?

We tried to use <import_dictionary> tag but as it is not define in the topology_schema.rng file from Autocoders it failed.

If it not possible, shall we open an enhancement issue to add this functionality ? (add import_dictionary tag in the Autocoders  RNG schema).


lestarch

unread,
May 27, 2021, 11:35:03 AM5/27/21
to F´ Community Group
The Topology Ai file is just a set of component imports, instantiations and wire connections.  I don't think importing a dictionary would help here?

Are you just trying to split it into more manageable chunks? or are you trying to define channels/events/commands at the topology leve?

-Michael

Thibault FARGES

unread,
May 27, 2021, 5:33:34 PM5/27/21
to F´ Community Group
Yes, you are absolutely right, we would like to divide the thousands of lines that make up RefTopologyAppAi.xml into several more manageable files.

These files would be named after sections like: Drivers, Command Reg, Comand Dispatch, etc for example.

We fill this file by hand and it's hard to find it after a while, maybe there is a more elegant way to fill it (without necessarily going through a paid tool)?
We have very quickly seen (due to lack of time and urgency on other projects) that there is a F Prime modeling tool "F Prime Prime" in development, maybe it would be it to generate the RefTopologyAppAi.xml file ?

-Thibault

lestarch

unread,
May 28, 2021, 1:53:01 PM5/28/21
to F´ Community Group
This has been a feature request for some time.  On some projects we have used template engines (Jinja, mustache templates, etc) to generate this Ai file.  Your project could so something similar to assemble it (albeit crudely) from parts.  However, we don't have a generic solution to this in the main framework.  I have shown some pseudo-template code below .

RefTopologyAi.xml.tmpl

```
... Ai header lines ...

{{ print  open(includes.xml.part).read()  }}
{{ print  open(instances.xml.part).read()  }}
{{ for file in <all .part files>
      print open(file).read()
}}
.. Ai footer lines
```

F´´  will make modeling easier.  We are prioritizing its integration into the framework as we speak!

-Michael

Thibault FARGES

unread,
May 31, 2021, 5:18:33 PM5/31/21
to F´ Community Group
Ah thank you for this information, I didn't know about these  template engines, we don't use any at all at our place.
I think we'll just write the Topology by hand until we finish studying your framework. If we go back to study your framework to use it on an industrial software and not a PoC, and if F Prime Prime is still not released, we will consider turning to your template  engines solution!

Concerning F Prime Prime itself, indeed,having such a fully integrated Open Source modeling tool is very interesting from my point of view. It could allow systems engineers, numerical simulation engineers and  Fight Software engineers to have a common workspace!
In our company, the system engineers establish the system performance balances from the Simulink models built by the numerical simulation engineers. These models (managing mission modes, image processing and FDIR) are then converted into source code and reintegrated into the Flight  Software by the Flight  Sftware engineers. Being part of the fFight Software team, it is really frustrating not to have a clear, global view of the whole system, due in part to the fact that the software is managed on two different departments with two completely different environments.

- Thibault.

Jocelyn Kevorkian

unread,
Jun 11, 2021, 5:26:04 AM6/11/21
to F´ Community Group
Hi ! 

I was not able to find the F Prime Prime modeling tool, could you provide me a link please ?

Anderson, Joshua L (US 348C)

unread,
Jun 11, 2021, 12:08:58 PM6/11/21
to Jocelyn Kevorkian, F´ Community Group

You can checkout F'' here: https://github.com/fprime-community/fpp

Keep in mind it's still in-development… the fpp tool itself is nearly complete but the process for integrating it with F' is just beginning.

 

- Joshua Anderson

--
You received this message because you are subscribed to the Google Groups "F´ Community Group" group.
To unsubscribe from this group and stop receiving emails from it, send an email to fprime-communi...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/fprime-community/fb2c7e23-4cc6-4108-a147-20a0b0291b58n%40googlegroups.com.

Reply all
Reply to author
Forward
0 new messages