Add support for arbitrary bitwidth packet metadata

This patch is related to #24172

Change-Id: I29fc82bd3944b7fc9f58021df56cadd209cac190
diff --git a/core/api/src/main/java/org/onosproject/net/pi/model/PiPacketMetadataModel.java b/core/api/src/main/java/org/onosproject/net/pi/model/PiPacketMetadataModel.java
index 76fdbe4..6cf2f499 100644
--- a/core/api/src/main/java/org/onosproject/net/pi/model/PiPacketMetadataModel.java
+++ b/core/api/src/main/java/org/onosproject/net/pi/model/PiPacketMetadataModel.java
@@ -37,4 +37,12 @@
      * @return size in bit
      */
     int bitWidth();
+
+    /**
+     * Return true is the packet metadata has a fixed bit width.
+     * It returns false if it can have flexible bit width.
+     *
+     * @return True if the packet metadata has fixed bit width, false otherwise
+     */
+    boolean hasBitWidth();
 }