Key objects of the ladish data model are:
- studio
- room
- project
Studio contains:
- JACK server (and its settings)
- Rooms (local and remote)
- Applications whose JACK clients are part of the high level, hardware setup. For example, master mixer, equalizer, crossover. Settings for connecting to remote hosts are also part of the studio.
- Connections between studio applications, hardware jack client, netjack client(s) and room ports
Rooms are where projects are loaded. They define set of ports that are used for connecting with rest of the studio.
Projects contain:
- applications that provide JACK clients
- Connections between studio applications and room ports
When project is exported for backup or transfer to other computer, room definition is stored too. This allows room to be imported along with the project, while giving option to use already existing room with matching ports.
D-Bus is used for communication between some components. "JACK server" is configured and accessed by ladish daemon though D-Bus. gladish and LADI Tools communicate with the ladish daemon through D-Bus.
virtualization is a ladish feature that allows port grouping different from the one in the underlying JACK graph. The virtualizer module is the core module of the virtualization that also implements automatic port regrouping for hardware and a2jmidid ports.
Diagrams:
- The mixed component diagram shows rough plan for the ladish internals
- OBSOLETE D-Bus interactions between components in LADI system. png svg (pre-ladish draft)
- OBSOLETE JACK's environment (LAC 2008)
