diff --git a/mainloop.hpp b/mainloop.hpp
index 4bc08c4..2d2cea2 100644
--- a/mainloop.hpp
+++ b/mainloop.hpp
@@ -18,8 +18,19 @@
         /** @brief Constructor
          *
          *  @param[in] path - hwmon sysfs instance to manage
+         *  @param[in] prefix - DBus busname prefix.
+         *  @param[in] root - DBus sensors namespace root.
+         *
+         *  Any DBus objects are created relative to the DBus
+         *  sensors namespace root.
+         *
+         *  At startup, the application will own a busname with
+         *  the format <prefix>.hwmon<n>.
          */
-        explicit MainLoop(const std::string& path);
+        MainLoop(
+            const std::string& path,
+            const char* prefix,
+            const char* root);
 
         /** @brief Start polling loop and process dbus traffic. */
         void run();
@@ -36,4 +47,8 @@
         volatile bool _shutdown;
         /** @brief Path to hwmon sysfs instance. */
         std::string _path;
+        /** @brief DBus busname prefix. */
+        const char* _prefix;
+        /** @brief DBus sensors namespace root. */
+        const char* _root;
 };
