Support SlicingConfig for 5G Slicing Configuration

- add new HAL APIs getSlicingConfig() and getSlicingConfigResponse()
- create structs SlicingConfig, UrspRule, RouteSelectionDescriptor,
  RouteSelectionDescriptorParams, Nssais, and RejectedSliceInfo
- add SliceRejectionCause

Bug: 178075054
Test: run "atest VtsHalRadioV1_6TargetTest" and check the result for
      getSlicingConfig is PASSED
[3/13] PerInstance/RadioHidlTest_v1_6#getSlicingConfig/0_slot1: PASSED (15ms)

Change-Id: I5dc97d3c49d0bf4726975a5558360ebf9c09224b
diff --git a/radio/1.6/IRadio.hal b/radio/1.6/IRadio.hal
index 7bb3536..b756ce1 100644
--- a/radio/1.6/IRadio.hal
+++ b/radio/1.6/IRadio.hal
@@ -505,4 +505,17 @@
      * Response function is IRadioResponse.getCurrentCallsResponse_1_6()
      */
     oneway getCurrentCalls_1_6(int32_t serial);
+
+    /**
+     * Request to get the current slicing configuration including URSP rules and
+     * NSSAIs (configured, allowed and rejected).
+     * URSP stands for UE route selection policy and is defined in 3GPP TS 24.526
+     * Section 4.2.
+     * An NSSAI is a collection of network slices. Each network slice is identified by
+     * an S-NSSAI and is represented by the struct SliceInfo. NSSAI and S-NSSAI
+     * are defined in 3GPP TS 24.501.
+     *
+     * Response function is IRadioResponse.getSlicingConfigResponse()
+     */
+    oneway getSlicingConfig(int32_t serial);
 };