sensor: Implement sensor "PRIORITY"

This commit introduces the `xyz.openbmc_project.Common.Priority`
interface to define the priority of sensors. If a sensor's priority
attribute is specified, this interface is created with the 'priority'
attribute. However, if the priority attribute is not specified, this
interface is not created.

The `xyz.openbmc_project.Common.Priority` interface is used to indicate
the priority level of fan sensors. It provides information about
primary and secondary RPM sensors for dual rotor fans, allowing for a
more specific description of the sensor's priority.

phosphor-dbus-interfaces commit:
https://gerrit.openbmc.org/c/openbmc/phosphor-dbus-interfaces/+/66779

Tested: Build phosphor-hwmon successfully

'''
1. Retrieve the priority level of the secondary sensor

busctl introspect xyz.openbmc_project.Hwmon-xxx .Hwmon1 \
/xyz/openbmc_project/sensors/fan_tach/fan1_1  xyz.openbmc_project.Common.Priority

NAME                                TYPE      SIGNATURE RESULT/VALUE FLAGS
.Priority                           property  u         1            emits-change writable

2. If the "PRIORITY" is not specified in the sensor's configuration file

busctl introspect xyz.openbmc_project.Hwmon-xxx .Hwmon1 \
/xyz/openbmc_project/sensors/fan_tach/fan1_0  xyz.openbmc_project.Common.Priority
NAME TYPE SIGNATURE RESULT/VALUE FLAGS

3. Change the sensor priority

busctl set-property xyz.openbmc_project.Hwmon-xxx.Hwmon1 \
/xyz/openbmc_project/sensors/fan_tach/fan1_1 xyz.openbmc_project.Common.Priority \
 Priority u 0

busctl introspect xyz.openbmc_project.Hwmon-xxx .Hwmon1 \
/xyz/openbmc_project/sensors/fan_tach/fan1_1  xyz.openbmc_project.Common.Priority
NAME                                TYPE      SIGNATURE RESULT/VALUE FLAGS
.Priority                           property  u         0            emits-change writable
'''

Change-Id: I7a226cf105756bc32e04f6724428d93e84dfb72a
Signed-off-by: Lakshmi Yadlapati <lakshmiy@us.ibm.com>
diff --git a/sensor.hpp b/sensor.hpp
index 6f7aa59..ac38cff 100644
--- a/sensor.hpp
+++ b/sensor.hpp
@@ -138,6 +138,19 @@
                                                 double accuracy);
 
     /**
+     * @brief Add Priority interface and priority property for sensors
+     * @details The Priority interface defines priority levels for sensors.
+     *
+     * @param[in] info     - Sensor object information
+     * @param[in] priority - The priority level for the sensor
+     *
+     * @return - Shared pointer to the priority object
+     */
+
+    std::shared_ptr<PriorityObject> addPriority(ObjectInfo& info,
+                                                size_t priority);
+
+    /**
      * @brief Get the scale from the sensor.
      *
      * @return - Scale value