Create a default MQDescriptor constructor.

Create a default MQDescriptor constructor without
arguments which can be passed back if there is an
error in FMQ setup.

Test: FMQ unit tests
Bug: 33809187
Change-Id: I9845f42a92b5f84623f43a1c6b662ba5d0e045d0
diff --git a/base/include/hidl/MQDescriptor.h b/base/include/hidl/MQDescriptor.h
index 0bffa75..8043761 100644
--- a/base/include/hidl/MQDescriptor.h
+++ b/base/include/hidl/MQDescriptor.h
@@ -58,6 +58,7 @@
     MQDescriptor(size_t bufferSize, native_handle_t* nHandle,
                  size_t messageSize, bool configureEventFlag = false);
 
+    MQDescriptor();
     ~MQDescriptor();
 
     explicit MQDescriptor(const MQDescriptor &other);
@@ -200,6 +201,12 @@
 }
 
 template<MQFlavor flavor>
+MQDescriptor<flavor>::MQDescriptor() : MQDescriptor(
+        std::vector<android::hardware::GrantorDescriptor>(),
+        nullptr /* nHandle */,
+        0 /* size */) {}
+
+template<MQFlavor flavor>
 MQDescriptor<flavor>::~MQDescriptor() {
     if (mHandle != nullptr) {
         native_handle_close(mHandle);