BMCDump: dump subtype input parameter support

The BMC dump is not accepting any parameters to specify the type of
dump or level of data to be collected. It was always creating a default
user-requested dump.

This commit allows for the specification of the dump type during the
dump creation process. A new table has been added in a new header file
which stores the valid dump types. When a new dump is requested, the
specified dump type is verified against this table. If no dump type is
mentioned, a user-requested BMC dump is created for backward
compatibility. If an invalid dump type is mentioned, an Invalid
Argument exception is thrown.

Tested:
- Create BMC dump with no arguments
- Create BMC dump with type as user
- Create a error log dump and make sure other types of dumps
  which is using internal interface is not impacted.
- Built with master and p10bmc

Change-Id: I79f68be6ac6892ac7754b7221db64c22330b1822
Signed-off-by: Dhruvaraj Subhashchandran <dhruvaraj@in.ibm.com>
diff --git a/meson.build b/meson.build
index 1ba3e32..5696b45 100644
--- a/meson.build
+++ b/meson.build
@@ -160,6 +160,7 @@
         'dump_offload.cpp',
         'dump_manager_faultlog.cpp',
         'faultlog_dump_entry.cpp',
+        'dump_types.cpp'
     ]
 
 phosphor_dump_manager_dependency = [