VOL-5197: Add QSFP-DD as a form factor for the TransceiverAttributes

Change-Id: I950ba01a08b14e5b8428cf7464427a69cf892854
diff --git a/cpp/dmi/hw.pb.cc b/cpp/dmi/hw.pb.cc
index 1982b55..563ab4d 100644
--- a/cpp/dmi/hw.pb.cc
+++ b/cpp/dmi/hw.pb.cc
@@ -632,7 +632,7 @@
   "rted_voltage\030\001 \001(\0162,.dmi.PsuComponentAtt"
   "ributes.SupportedVoltage\"P\n\020SupportedVol"
   "tage\022\037\n\033SUPPORTED_VOLTAGE_UNDEFINED\020\000\022\007\n"
-  "\003V48\020\001\022\010\n\004V230\020\002\022\010\n\004V115\020\003\"\253\004\n\037Transceiv"
+  "\003V48\020\001\022\010\n\004V230\020\002\022\010\n\004V115\020\003\"\270\004\n\037Transceiv"
   "erComponentsAttributes\022D\n\013form_factor\030\001 "
   "\001(\0162/.dmi.TransceiverComponentsAttribute"
   "s.FormFactor\022(\n\ntrans_type\030\002 \001(\0162\024.dmi.T"
@@ -641,114 +641,115 @@
   "e\022\025\n\rrx_wavelength\030\005 \003(\r\022\025\n\rtx_wavelengt"
   "h\030\006 \003(\r\022)\n\020wavelength_scale\030\007 \001(\0162\017.dmi."
   "ValueScale\022\020\n\010tx_power\030\010 \003(\005\022\'\n\016tx_power"
-  "_scale\030\t \001(\0162\017.dmi.ValueScale\"\300\001\n\nFormFa"
+  "_scale\030\t \001(\0162\017.dmi.ValueScale\"\315\001\n\nFormFa"
   "ctor\022\027\n\023FORM_FACTOR_UNKNOWN\020\000\022\010\n\004QSFP\020\001\022"
   "\r\n\tQSFP_PLUS\020\002\022\n\n\006QSFP28\020\003\022\007\n\003SFP\020\004\022\014\n\010S"
   "FP_PLUS\020\005\022\007\n\003XFP\020\006\022\010\n\004CFP4\020\007\022\010\n\004CFP2\020\010\022\010"
   "\n\004CPAK\020\t\022\006\n\002X2\020\n\022\t\n\005OTHER\020\013\022\007\n\003CFP\020\014\022\014\n\010"
-  "CFP2_ACO\020\r\022\014\n\010CFP2_DCO\020\016\"\350\005\n\tComponent\022\014"
-  "\n\004name\030\001 \001(\t\022!\n\005class\030\002 \001(\0162\022.dmi.Compon"
-  "entType\022\023\n\013description\030\003 \001(\t\022\016\n\006parent\030\004"
-  " \001(\t\022\026\n\016parent_rel_pos\030\005 \001(\005\022 \n\010children"
-  "\030\006 \003(\0132\016.dmi.Component\022\024\n\014hardware_rev\030\007"
-  " \001(\t\022\024\n\014firmware_rev\030\010 \001(\t\022\024\n\014software_r"
-  "ev\030\t \001(\t\022\022\n\nserial_num\030\n \001(\t\022\020\n\010mfg_name"
-  "\030\013 \001(\t\022\022\n\nmodel_name\030\014 \001(\t\022\r\n\005alias\030\r \001("
-  "\t\022\020\n\010asset_id\030\016 \001(\t\022\016\n\006is_fru\030\017 \001(\010\022,\n\010m"
-  "fg_date\030\020 \001(\0132\032.google.protobuf.Timestam"
-  "p\022\025\n\003uri\030\021 \001(\0132\010.dmi.Uri\022\027\n\004uuid\030\022 \001(\0132\t"
-  ".dmi.Uuid\022\"\n\005state\030\023 \001(\0132\023.dmi.Component"
-  "State\022-\n\013sensor_data\030\024 \003(\0132\030.dmi.Compone"
-  "ntSensorData\0221\n\tport_attr\0302 \001(\0132\034.dmi.Po"
-  "rtComponentAttributesH\000\022;\n\016container_att"
-  "r\0303 \001(\0132!.dmi.ContainerComponentAttribut"
-  "esH\000\022/\n\010psu_attr\0304 \001(\0132\033.dmi.PsuComponen"
-  "tAttributesH\000\022@\n\020transceiver_attr\0305 \001(\0132"
-  "$.dmi.TransceiverComponentsAttributesH\000B"
-  "\n\n\010specific\"\212\001\n\010Hardware\022/\n\013last_change\030"
-  "\001 \001(\0132\032.google.protobuf.Timestamp\022\034\n\004roo"
-  "t\030\002 \001(\0132\016.dmi.Component\022/\n\013last_booted\030\003"
-  " \001(\0132\032.google.protobuf.Timestamp\"\351\002\n\023Mod"
-  "ifiableComponent\022\014\n\004name\030\001 \001(\t\022!\n\005class\030"
-  "\002 \001(\0162\022.dmi.ComponentType\022\036\n\006parent\030\003 \001("
-  "\0132\016.dmi.Component\022\026\n\016parent_rel_pos\030\004 \001("
-  "\005\022\r\n\005alias\030\005 \001(\t\022\020\n\010asset_id\030\006 \001(\t\022\025\n\003ur"
-  "i\030\007 \001(\0132\010.dmi.Uri\022-\n\013admin_state\030\010 \001(\0162\030"
-  ".dmi.ComponentAdminState\0227\n\tport_attr\0302 "
-  "\001(\0132\".dmi.PortComponentChangeAttributesH"
-  "\000\022=\n\010trx_attr\0303 \001(\0132).dmi.TransceiverCom"
-  "ponentChangeAttributesH\000B\n\n\010specific*\264\003\n"
-  "\rComponentType\022\034\n\030COMPONENT_TYPE_UNDEFIN"
-  "ED\020\000\022\032\n\026COMPONENT_TYPE_UNKNOWN\020\001\022\032\n\026COMP"
-  "ONENT_TYPE_CHASSIS\020\002\022\034\n\030COMPONENT_TYPE_B"
-  "ACKPLANE\020\003\022\034\n\030COMPONENT_TYPE_CONTAINER\020\004"
-  "\022\037\n\033COMPONENT_TYPE_POWER_SUPPLY\020\005\022\026\n\022COM"
-  "PONENT_TYPE_FAN\020\006\022\031\n\025COMPONENT_TYPE_SENS"
-  "OR\020\007\022\031\n\025COMPONENT_TYPE_MODULE\020\010\022\027\n\023COMPO"
-  "NENT_TYPE_PORT\020\t\022\026\n\022COMPONENT_TYPE_CPU\020\n"
-  "\022\032\n\026COMPONENT_TYPE_BATTERY\020\013\022\032\n\026COMPONEN"
-  "T_TYPE_STORAGE\020\014\022\031\n\025COMPONENT_TYPE_MEMOR"
-  "Y\020\r\022\036\n\032COMPONENT_TYPE_TRANSCEIVER\020\016*\263\001\n\023"
-  "ComponentAdminState\022\036\n\032COMP_ADMIN_STATE_"
-  "UNDEFINED\020\000\022\034\n\030COMP_ADMIN_STATE_UNKNOWN\020"
-  "\001\022\033\n\027COMP_ADMIN_STATE_LOCKED\020\002\022\"\n\036COMP_A"
-  "DMIN_STATE_SHUTTING_DOWN\020\003\022\035\n\031COMP_ADMIN"
-  "_STATE_UNLOCKED\020\004*\250\001\n\022ComponentOperState"
-  "\022\035\n\031COMP_OPER_STATE_UNDEFINED\020\000\022\033\n\027COMP_"
-  "OPER_STATE_UNKNOWN\020\001\022\034\n\030COMP_OPER_STATE_"
-  "DISABLED\020\002\022\033\n\027COMP_OPER_STATE_ENABLED\020\003\022"
-  "\033\n\027COMP_OPER_STATE_TESTING\020\004*\246\001\n\023Compone"
-  "ntUsageState\022\036\n\032COMP_USAGE_STATE_UNDEFIN"
-  "ED\020\000\022\034\n\030COMP_USAGE_STATE_UNKNOWN\020\001\022\031\n\025CO"
-  "MP_USAGE_STATE_IDLE\020\002\022\033\n\027COMP_USAGE_STAT"
-  "E_ACTIVE\020\003\022\031\n\025COMP_USAGE_STATE_BUSY\020\004*\217\002"
-  "\n\023ComponentAlarmState\022\036\n\032COMP_ALARM_STAT"
-  "E_UNDEFINED\020\000\022\034\n\030COMP_ALARM_STATE_UNKNOW"
-  "N\020\001\022!\n\035COMP_ALARM_STATE_UNDER_REPAIR\020\002\022\035"
-  "\n\031COMP_ALARM_STATE_CRITICAL\020\003\022\032\n\026COMP_AL"
-  "ARM_STATE_MAJOR\020\004\022\032\n\026COMP_ALARM_STATE_MI"
-  "NOR\020\005\022\034\n\030COMP_ALARM_STATE_WARNING\020\006\022\"\n\036C"
-  "OMP_ALARM_STATE_INDETERMINATE\020\007*\274\001\n\025Comp"
-  "onentStandbyState\022 \n\034COMP_STANDBY_STATE_"
-  "UNDEFINED\020\000\022\036\n\032COMP_STANDBY_STATE_UNKNOW"
-  "N\020\001\022\032\n\026COMP_STANDBY_STATE_HOT\020\002\022\033\n\027COMP_"
-  "STANDBY_STATE_COLD\020\003\022(\n$COMP_STANDBY_STA"
-  "TE_PROVIDING_SERVICE\020\004*\235\003\n\rDataValueType"
-  "\022\030\n\024VALUE_TYPE_UNDEFINED\020\000\022\024\n\020VALUE_TYPE"
-  "_OTHER\020\001\022\026\n\022VALUE_TYPE_UNKNOWN\020\002\022\027\n\023VALU"
-  "E_TYPE_VOLTS_AC\020\003\022\027\n\023VALUE_TYPE_VOLTS_DC"
-  "\020\004\022\026\n\022VALUE_TYPE_AMPERES\020\005\022\024\n\020VALUE_TYPE"
-  "_WATTS\020\006\022\024\n\020VALUE_TYPE_HERTZ\020\007\022\026\n\022VALUE_"
-  "TYPE_CELSIUS\020\010\022\031\n\025VALUE_TYPE_PERCENT_RH\020"
-  "\t\022\022\n\016VALUE_TYPE_RPM\020\n\022\022\n\016VALUE_TYPE_CMM\020"
-  "\013\022\032\n\026VALUE_TYPE_TRUTH_VALUE\020\014\022\026\n\022VALUE_T"
-  "YPE_PERCENT\020\r\022\025\n\021VALUE_TYPE_METERS\020\016\022\024\n\020"
-  "VALUE_TYPE_BYTES\020\017\022\022\n\016VALUE_TYPE_DBM\020\020*\244"
-  "\003\n\nValueScale\022\031\n\025VALUE_SCALE_UNDEFINED\020\000"
-  "\022\025\n\021VALUE_SCALE_YOCTO\020\001\022\025\n\021VALUE_SCALE_Z"
-  "EPTO\020\002\022\024\n\020VALUE_SCALE_ATTO\020\003\022\025\n\021VALUE_SC"
-  "ALE_FEMTO\020\004\022\024\n\020VALUE_SCALE_PICO\020\005\022\024\n\020VAL"
-  "UE_SCALE_NANO\020\006\022\025\n\021VALUE_SCALE_MICRO\020\007\022\025"
-  "\n\021VALUE_SCALE_MILLI\020\010\022\025\n\021VALUE_SCALE_UNI"
-  "TS\020\t\022\024\n\020VALUE_SCALE_KILO\020\n\022\024\n\020VALUE_SCAL"
-  "E_MEGA\020\013\022\024\n\020VALUE_SCALE_GIGA\020\014\022\024\n\020VALUE_"
-  "SCALE_TERA\020\r\022\024\n\020VALUE_SCALE_PETA\020\016\022\023\n\017VA"
-  "LUE_SCALE_EXA\020\017\022\025\n\021VALUE_SCALE_ZETTA\020\020\022\025"
-  "\n\021VALUE_SCALE_YOTTA\020\021*\202\001\n\014SensorStatus\022\033"
-  "\n\027SENSOR_STATUS_UNDEFINED\020\000\022\024\n\020SENSOR_ST"
-  "ATUS_OK\020\001\022\035\n\031SENSOR_STATUS_UNAVAILABLE\020\002"
-  "\022 \n\034SENSOR_STATUS_NONOPERATIONAL\020\003*\244\001\n\017T"
-  "ransceiverType\022\022\n\016TYPE_UNDEFINED\020\000\022\014\n\010ET"
-  "HERNET\020\001\022\010\n\004GPON\020\002\022\t\n\005XGPON\020\003\022\n\n\006XGSPON\020"
-  "\004\022\010\n\004CPON\020\005\022\013\n\007NG_PON2\020\006\022\010\n\004EPON\020\007\022\025\n\021CO"
-  "MBO_GPON_XGSPON\020\010\022\026\n\021TYPE_NOT_DETECTED\020\377"
-  "\001B;Z9github.com/opencord/device-manageme"
-  "nt-interface/v3/go/dmib\006proto3"
+  "CFP2_ACO\020\r\022\014\n\010CFP2_DCO\020\016\022\013\n\007QSFP_DD\020\017\"\350\005"
+  "\n\tComponent\022\014\n\004name\030\001 \001(\t\022!\n\005class\030\002 \001(\016"
+  "2\022.dmi.ComponentType\022\023\n\013description\030\003 \001("
+  "\t\022\016\n\006parent\030\004 \001(\t\022\026\n\016parent_rel_pos\030\005 \001("
+  "\005\022 \n\010children\030\006 \003(\0132\016.dmi.Component\022\024\n\014h"
+  "ardware_rev\030\007 \001(\t\022\024\n\014firmware_rev\030\010 \001(\t\022"
+  "\024\n\014software_rev\030\t \001(\t\022\022\n\nserial_num\030\n \001("
+  "\t\022\020\n\010mfg_name\030\013 \001(\t\022\022\n\nmodel_name\030\014 \001(\t\022"
+  "\r\n\005alias\030\r \001(\t\022\020\n\010asset_id\030\016 \001(\t\022\016\n\006is_f"
+  "ru\030\017 \001(\010\022,\n\010mfg_date\030\020 \001(\0132\032.google.prot"
+  "obuf.Timestamp\022\025\n\003uri\030\021 \001(\0132\010.dmi.Uri\022\027\n"
+  "\004uuid\030\022 \001(\0132\t.dmi.Uuid\022\"\n\005state\030\023 \001(\0132\023."
+  "dmi.ComponentState\022-\n\013sensor_data\030\024 \003(\0132"
+  "\030.dmi.ComponentSensorData\0221\n\tport_attr\0302"
+  " \001(\0132\034.dmi.PortComponentAttributesH\000\022;\n\016"
+  "container_attr\0303 \001(\0132!.dmi.ContainerComp"
+  "onentAttributesH\000\022/\n\010psu_attr\0304 \001(\0132\033.dm"
+  "i.PsuComponentAttributesH\000\022@\n\020transceive"
+  "r_attr\0305 \001(\0132$.dmi.TransceiverComponents"
+  "AttributesH\000B\n\n\010specific\"\212\001\n\010Hardware\022/\n"
+  "\013last_change\030\001 \001(\0132\032.google.protobuf.Tim"
+  "estamp\022\034\n\004root\030\002 \001(\0132\016.dmi.Component\022/\n\013"
+  "last_booted\030\003 \001(\0132\032.google.protobuf.Time"
+  "stamp\"\351\002\n\023ModifiableComponent\022\014\n\004name\030\001 "
+  "\001(\t\022!\n\005class\030\002 \001(\0162\022.dmi.ComponentType\022\036"
+  "\n\006parent\030\003 \001(\0132\016.dmi.Component\022\026\n\016parent"
+  "_rel_pos\030\004 \001(\005\022\r\n\005alias\030\005 \001(\t\022\020\n\010asset_i"
+  "d\030\006 \001(\t\022\025\n\003uri\030\007 \001(\0132\010.dmi.Uri\022-\n\013admin_"
+  "state\030\010 \001(\0162\030.dmi.ComponentAdminState\0227\n"
+  "\tport_attr\0302 \001(\0132\".dmi.PortComponentChan"
+  "geAttributesH\000\022=\n\010trx_attr\0303 \001(\0132).dmi.T"
+  "ransceiverComponentChangeAttributesH\000B\n\n"
+  "\010specific*\264\003\n\rComponentType\022\034\n\030COMPONENT"
+  "_TYPE_UNDEFINED\020\000\022\032\n\026COMPONENT_TYPE_UNKN"
+  "OWN\020\001\022\032\n\026COMPONENT_TYPE_CHASSIS\020\002\022\034\n\030COM"
+  "PONENT_TYPE_BACKPLANE\020\003\022\034\n\030COMPONENT_TYP"
+  "E_CONTAINER\020\004\022\037\n\033COMPONENT_TYPE_POWER_SU"
+  "PPLY\020\005\022\026\n\022COMPONENT_TYPE_FAN\020\006\022\031\n\025COMPON"
+  "ENT_TYPE_SENSOR\020\007\022\031\n\025COMPONENT_TYPE_MODU"
+  "LE\020\010\022\027\n\023COMPONENT_TYPE_PORT\020\t\022\026\n\022COMPONE"
+  "NT_TYPE_CPU\020\n\022\032\n\026COMPONENT_TYPE_BATTERY\020"
+  "\013\022\032\n\026COMPONENT_TYPE_STORAGE\020\014\022\031\n\025COMPONE"
+  "NT_TYPE_MEMORY\020\r\022\036\n\032COMPONENT_TYPE_TRANS"
+  "CEIVER\020\016*\263\001\n\023ComponentAdminState\022\036\n\032COMP"
+  "_ADMIN_STATE_UNDEFINED\020\000\022\034\n\030COMP_ADMIN_S"
+  "TATE_UNKNOWN\020\001\022\033\n\027COMP_ADMIN_STATE_LOCKE"
+  "D\020\002\022\"\n\036COMP_ADMIN_STATE_SHUTTING_DOWN\020\003\022"
+  "\035\n\031COMP_ADMIN_STATE_UNLOCKED\020\004*\250\001\n\022Compo"
+  "nentOperState\022\035\n\031COMP_OPER_STATE_UNDEFIN"
+  "ED\020\000\022\033\n\027COMP_OPER_STATE_UNKNOWN\020\001\022\034\n\030COM"
+  "P_OPER_STATE_DISABLED\020\002\022\033\n\027COMP_OPER_STA"
+  "TE_ENABLED\020\003\022\033\n\027COMP_OPER_STATE_TESTING\020"
+  "\004*\246\001\n\023ComponentUsageState\022\036\n\032COMP_USAGE_"
+  "STATE_UNDEFINED\020\000\022\034\n\030COMP_USAGE_STATE_UN"
+  "KNOWN\020\001\022\031\n\025COMP_USAGE_STATE_IDLE\020\002\022\033\n\027CO"
+  "MP_USAGE_STATE_ACTIVE\020\003\022\031\n\025COMP_USAGE_ST"
+  "ATE_BUSY\020\004*\217\002\n\023ComponentAlarmState\022\036\n\032CO"
+  "MP_ALARM_STATE_UNDEFINED\020\000\022\034\n\030COMP_ALARM"
+  "_STATE_UNKNOWN\020\001\022!\n\035COMP_ALARM_STATE_UND"
+  "ER_REPAIR\020\002\022\035\n\031COMP_ALARM_STATE_CRITICAL"
+  "\020\003\022\032\n\026COMP_ALARM_STATE_MAJOR\020\004\022\032\n\026COMP_A"
+  "LARM_STATE_MINOR\020\005\022\034\n\030COMP_ALARM_STATE_W"
+  "ARNING\020\006\022\"\n\036COMP_ALARM_STATE_INDETERMINA"
+  "TE\020\007*\274\001\n\025ComponentStandbyState\022 \n\034COMP_S"
+  "TANDBY_STATE_UNDEFINED\020\000\022\036\n\032COMP_STANDBY"
+  "_STATE_UNKNOWN\020\001\022\032\n\026COMP_STANDBY_STATE_H"
+  "OT\020\002\022\033\n\027COMP_STANDBY_STATE_COLD\020\003\022(\n$COM"
+  "P_STANDBY_STATE_PROVIDING_SERVICE\020\004*\235\003\n\r"
+  "DataValueType\022\030\n\024VALUE_TYPE_UNDEFINED\020\000\022"
+  "\024\n\020VALUE_TYPE_OTHER\020\001\022\026\n\022VALUE_TYPE_UNKN"
+  "OWN\020\002\022\027\n\023VALUE_TYPE_VOLTS_AC\020\003\022\027\n\023VALUE_"
+  "TYPE_VOLTS_DC\020\004\022\026\n\022VALUE_TYPE_AMPERES\020\005\022"
+  "\024\n\020VALUE_TYPE_WATTS\020\006\022\024\n\020VALUE_TYPE_HERT"
+  "Z\020\007\022\026\n\022VALUE_TYPE_CELSIUS\020\010\022\031\n\025VALUE_TYP"
+  "E_PERCENT_RH\020\t\022\022\n\016VALUE_TYPE_RPM\020\n\022\022\n\016VA"
+  "LUE_TYPE_CMM\020\013\022\032\n\026VALUE_TYPE_TRUTH_VALUE"
+  "\020\014\022\026\n\022VALUE_TYPE_PERCENT\020\r\022\025\n\021VALUE_TYPE"
+  "_METERS\020\016\022\024\n\020VALUE_TYPE_BYTES\020\017\022\022\n\016VALUE"
+  "_TYPE_DBM\020\020*\244\003\n\nValueScale\022\031\n\025VALUE_SCAL"
+  "E_UNDEFINED\020\000\022\025\n\021VALUE_SCALE_YOCTO\020\001\022\025\n\021"
+  "VALUE_SCALE_ZEPTO\020\002\022\024\n\020VALUE_SCALE_ATTO\020"
+  "\003\022\025\n\021VALUE_SCALE_FEMTO\020\004\022\024\n\020VALUE_SCALE_"
+  "PICO\020\005\022\024\n\020VALUE_SCALE_NANO\020\006\022\025\n\021VALUE_SC"
+  "ALE_MICRO\020\007\022\025\n\021VALUE_SCALE_MILLI\020\010\022\025\n\021VA"
+  "LUE_SCALE_UNITS\020\t\022\024\n\020VALUE_SCALE_KILO\020\n\022"
+  "\024\n\020VALUE_SCALE_MEGA\020\013\022\024\n\020VALUE_SCALE_GIG"
+  "A\020\014\022\024\n\020VALUE_SCALE_TERA\020\r\022\024\n\020VALUE_SCALE"
+  "_PETA\020\016\022\023\n\017VALUE_SCALE_EXA\020\017\022\025\n\021VALUE_SC"
+  "ALE_ZETTA\020\020\022\025\n\021VALUE_SCALE_YOTTA\020\021*\202\001\n\014S"
+  "ensorStatus\022\033\n\027SENSOR_STATUS_UNDEFINED\020\000"
+  "\022\024\n\020SENSOR_STATUS_OK\020\001\022\035\n\031SENSOR_STATUS_"
+  "UNAVAILABLE\020\002\022 \n\034SENSOR_STATUS_NONOPERAT"
+  "IONAL\020\003*\244\001\n\017TransceiverType\022\022\n\016TYPE_UNDE"
+  "FINED\020\000\022\014\n\010ETHERNET\020\001\022\010\n\004GPON\020\002\022\t\n\005XGPON"
+  "\020\003\022\n\n\006XGSPON\020\004\022\010\n\004CPON\020\005\022\013\n\007NG_PON2\020\006\022\010\n"
+  "\004EPON\020\007\022\025\n\021COMBO_GPON_XGSPON\020\010\022\026\n\021TYPE_N"
+  "OT_DETECTED\020\377\001B;Z9github.com/opencord/de"
+  "vice-management-interface/v3/go/dmib\006pro"
+  "to3"
   ;
 ::google::protobuf::internal::DescriptorTable descriptor_table_dmi_2fhw_2eproto = {
   false, InitDefaults_dmi_2fhw_2eproto, 
   descriptor_table_protodef_dmi_2fhw_2eproto,
-  "dmi/hw.proto", &assign_descriptors_table_dmi_2fhw_2eproto, 6510,
+  "dmi/hw.proto", &assign_descriptors_table_dmi_2fhw_2eproto, 6523,
 };
 
 void AddDescriptors_dmi_2fhw_2eproto() {
@@ -909,6 +910,7 @@
     case 12:
     case 13:
     case 14:
+    case 15:
       return true;
     default:
       return false;
@@ -931,6 +933,7 @@
 const TransceiverComponentsAttributes_FormFactor TransceiverComponentsAttributes::CFP;
 const TransceiverComponentsAttributes_FormFactor TransceiverComponentsAttributes::CFP2_ACO;
 const TransceiverComponentsAttributes_FormFactor TransceiverComponentsAttributes::CFP2_DCO;
+const TransceiverComponentsAttributes_FormFactor TransceiverComponentsAttributes::QSFP_DD;
 const TransceiverComponentsAttributes_FormFactor TransceiverComponentsAttributes::FormFactor_MIN;
 const TransceiverComponentsAttributes_FormFactor TransceiverComponentsAttributes::FormFactor_MAX;
 const int TransceiverComponentsAttributes::FormFactor_ARRAYSIZE;