From e002117098a5a3ac58d3113100ac8613dc412e36 Mon Sep 17 00:00:00 2001 From: Michael Mueller Date: Mon, 7 Aug 2023 17:41:51 +0200 Subject: [PATCH] Implemented Genode::print for Affinities to make printing affinities to console more convenient. --- repos/base/include/base/affinity.h | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/repos/base/include/base/affinity.h b/repos/base/include/base/affinity.h index a41bcc4a24..7421d1d074 100644 --- a/repos/base/include/base/affinity.h +++ b/repos/base/include/base/affinity.h @@ -93,6 +93,7 @@ class Genode::Affinity return Affinity::Space(node.attribute_value("width", 0U), node.attribute_value("height", 0U)); } + }; @@ -236,6 +237,30 @@ class Genode::Affinity } }; +namespace Genode { + static inline void print(Output &out, const Affinity::Space &space) + { + Genode::print(out, "("); + Genode::print(out, space.width()); + Genode::print(out, ","); + Genode::print(out, space.height()); + Genode::print(out, ")"); + } + + static inline void print(Output &out, const Affinity::Location &loc) + { + Genode::print(out, "("); + Genode::print(out, loc.xpos()); + Genode::print(out, ","); + Genode::print(out, loc.ypos()); + Genode::print(out, ","); + Genode::print(out, loc.width()); + Genode::print(out, "×"); + Genode::print(out, loc.height()); + Genode::print(out, ")"); + } +} + Genode::Affinity::Location Genode::Affinity::Space::location_of_index(int index) const {