sculpt: support uplink and event service providers

This patch enhances Sculpt with the ability to route uplink and event
sessions to the optional black-hole component.

Issue #4419
This commit is contained in:
Norman Feske 2022-03-08 15:46:14 +01:00
parent a941dfe7b2
commit b1e2e654a9
3 changed files with 6 additions and 1 deletions

View File

@ -482,8 +482,10 @@ void Depot_deploy::Child::gen_start_node(Xml_generator &xml,
_gen_provides_sub_node(xml, service, "file_system", "File_system");
_gen_provides_sub_node(xml, service, "framebuffer", "Framebuffer");
_gen_provides_sub_node(xml, service, "input", "Input");
_gen_provides_sub_node(xml, service, "event", "Event");
_gen_provides_sub_node(xml, service, "log", "LOG");
_gen_provides_sub_node(xml, service, "nic", "Nic");
_gen_provides_sub_node(xml, service, "uplink", "Uplink");
_gen_provides_sub_node(xml, service, "gui", "Gui");
_gen_provides_sub_node(xml, service, "gpu", "Gpu");
_gen_provides_sub_node(xml, service, "report", "Report");

View File

@ -35,6 +35,7 @@ struct Sculpt::Route : List_model<Route>::Element
case Service::Type::CAPTURE: return "capture";
case Service::Type::FILE_SYSTEM: return "file_system";
case Service::Type::NIC: return "nic";
case Service::Type::UPLINK: return "uplink";
case Service::Type::GUI: return "gui";
case Service::Type::GPU: return "gpu";
case Service::Type::RM: return "rm";
@ -65,6 +66,7 @@ struct Sculpt::Route : List_model<Route>::Element
case Service::Type::CAPTURE: return "Capture";
case Service::Type::FILE_SYSTEM: return "File system";
case Service::Type::NIC: return "Network";
case Service::Type::UPLINK: return "Network uplink";
case Service::Type::GUI: return "GUI";
case Service::Type::GPU: return "GPU";
case Service::Type::RM: return "Region maps";

View File

@ -27,7 +27,7 @@ struct Sculpt::Service
enum class Type {
AUDIO_IN, AUDIO_OUT, BLOCK, EVENT, CAPTURE, FILE_SYSTEM, NIC, GUI, GPU,
RM, IO_MEM, IO_PORT, IRQ, REPORT, ROM, TERMINAL, TRACE, USB, RTC,
PLATFORM, VM, PD, UNDEFINED };
PLATFORM, VM, PD, UPLINK, UNDEFINED };
enum class Match_label { EXACT, LAST };
@ -50,6 +50,7 @@ struct Sculpt::Service
case Type::CAPTURE: return "Capture";
case Type::FILE_SYSTEM: return "File_system";
case Type::NIC: return "Nic";
case Type::UPLINK: return "Uplink";
case Type::GUI: return "Gui";
case Type::GPU: return "Gpu";
case Type::RM: return "RM";