/**
 * SDRangel
 * This is the web REST/JSON API of SDRangel SDR software. SDRangel is an Open Source Qt5/OpenGL 3.0+ (4.3+ in Windows) GUI and server Software Defined Radio and signal analyzer in software. It supports Airspy, BladeRF, HackRF, LimeSDR, PlutoSDR, RTL-SDR, SDRplay RSP1 and FunCube    ---   Limitations and specifcities:    * In SDRangel GUI the first Rx device set cannot be deleted. Conversely the server starts with no device sets and its number of device sets can be reduced to zero by as many calls as necessary to /sdrangel/deviceset with DELETE method.   * Preset import and export from/to file is a server only feature.   * Device set focus is a GUI only feature.   * The following channels are not implemented (status 501 is returned): ATV and DATV demodulators, Channel Analyzer NG, LoRa demodulator   * The device settings and report structures contains only the sub-structure corresponding to the device type. The DeviceSettings and DeviceReport structures documented here shows all of them but only one will be or should be present at a time   * The channel settings and report structures contains only the sub-structure corresponding to the channel type. The ChannelSettings and ChannelReport structures documented here shows all of them but only one will be or should be present at a time    --- 
 *
 * OpenAPI spec version: 7.0.0
 * Contact: f4exb06@gmail.com
 *
 * NOTE: This class is auto generated by the swagger code generator program.
 * https://github.com/swagger-api/swagger-codegen.git
 * Do not edit the class manually.
 */

#ifndef ModelFactory_H_
#define ModelFactory_H_


#include "SWGADSBDemodReport.h"
#include "SWGADSBDemodSettings.h"
#include "SWGAFCActions.h"
#include "SWGAFCReport.h"
#include "SWGAFCSettings.h"
#include "SWGAISDemodReport.h"
#include "SWGAISDemodSettings.h"
#include "SWGAISModActions.h"
#include "SWGAISModReport.h"
#include "SWGAISModSettings.h"
#include "SWGAISSettings.h"
#include "SWGAMBEActions.h"
#include "SWGAMBEDevice.h"
#include "SWGAMBEDeviceReport.h"
#include "SWGAMBEDevices.h"
#include "SWGAMBEReport.h"
#include "SWGAMBESettings.h"
#include "SWGAMDemodReport.h"
#include "SWGAMDemodSettings.h"
#include "SWGAMModReport.h"
#include "SWGAMModSettings.h"
#include "SWGAPRSSettings.h"
#include "SWGAPTDemodActions.h"
#include "SWGAPTDemodActions_aos.h"
#include "SWGAPTDemodActions_los.h"
#include "SWGAPTDemodSettings.h"
#include "SWGATVDemodSettings.h"
#include "SWGATVModReport.h"
#include "SWGATVModSettings.h"
#include "SWGAirspyHFReport.h"
#include "SWGAirspyHFSettings.h"
#include "SWGAirspyReport.h"
#include "SWGAirspySettings.h"
#include "SWGAntennaToolsSettings.h"
#include "SWGArgInfo.h"
#include "SWGArgValue.h"
#include "SWGAudioDevices.h"
#include "SWGAudioInputDevice.h"
#include "SWGAudioInputSettings.h"
#include "SWGAudioOutputDevice.h"
#include "SWGAudioOutputSettings.h"
#include "SWGBFMDemodReport.h"
#include "SWGBFMDemodSettings.h"
#include "SWGBandwidth.h"
#include "SWGBase64Blob.h"
#include "SWGBeamSteeringCWModSettings.h"
#include "SWGBladeRF1InputSettings.h"
#include "SWGBladeRF1OutputSettings.h"
#include "SWGBladeRF2InputReport.h"
#include "SWGBladeRF2InputSettings.h"
#include "SWGBladeRF2MIMOReport.h"
#include "SWGBladeRF2MIMOSettings.h"
#include "SWGBladeRF2OutputReport.h"
#include "SWGBladeRF2OutputSettings.h"
#include "SWGCWKeyerSettings.h"
#include "SWGCapture.h"
#include "SWGChannel.h"
#include "SWGChannelActions.h"
#include "SWGChannelAnalyzerSettings.h"
#include "SWGChannelConfig.h"
#include "SWGChannelListItem.h"
#include "SWGChannelMarker.h"
#include "SWGChannelReport.h"
#include "SWGChannelSettings.h"
#include "SWGChannelsDetail.h"
#include "SWGChirpChatDemodReport.h"
#include "SWGChirpChatDemodSettings.h"
#include "SWGChirpChatModReport.h"
#include "SWGChirpChatModSettings.h"
#include "SWGCommand.h"
#include "SWGComplex.h"
#include "SWGConfigurationGroup.h"
#include "SWGConfigurationIdentifier.h"
#include "SWGConfigurationImportExport.h"
#include "SWGConfigurationItem.h"
#include "SWGConfigurations.h"
#include "SWGDABDemodSettings.h"
#include "SWGDATVDemodReport.h"
#include "SWGDATVDemodSettings.h"
#include "SWGDATVModReport.h"
#include "SWGDATVModSettings.h"
#include "SWGDOA2Report.h"
#include "SWGDOA2Settings.h"
#include "SWGDSDDemodReport.h"
#include "SWGDSDDemodSettings.h"
#include "SWGDVSerialDevice.h"
#include "SWGDVSerialDevices.h"
#include "SWGDemodAnalyzerSettings.h"
#include "SWGDeviceActions.h"
#include "SWGDeviceConfig.h"
#include "SWGDeviceListItem.h"
#include "SWGDeviceReport.h"
#include "SWGDeviceSet.h"
#include "SWGDeviceSetList.h"
#include "SWGDeviceSettings.h"
#include "SWGDeviceState.h"
#include "SWGErrorResponse.h"
#include "SWGFCDProPlusSettings.h"
#include "SWGFCDProSettings.h"
#include "SWGFeature.h"
#include "SWGFeatureActions.h"
#include "SWGFeatureConfig.h"
#include "SWGFeatureListItem.h"
#include "SWGFeaturePresetGroup.h"
#include "SWGFeaturePresetIdentifier.h"
#include "SWGFeaturePresetItem.h"
#include "SWGFeaturePresets.h"
#include "SWGFeatureReport.h"
#include "SWGFeatureSet.h"
#include "SWGFeatureSetPreset.h"
#include "SWGFeatureSettings.h"
#include "SWGFileInputReport.h"
#include "SWGFileInputSettings.h"
#include "SWGFileOutputSettings.h"
#include "SWGFilePath.h"
#include "SWGFileSinkActions.h"
#include "SWGFileSinkReport.h"
#include "SWGFileSinkSettings.h"
#include "SWGFileSourceActions.h"
#include "SWGFileSourceReport.h"
#include "SWGFileSourceSettings.h"
#include "SWGFreeDVDemodReport.h"
#include "SWGFreeDVDemodSettings.h"
#include "SWGFreeDVModReport.h"
#include "SWGFreeDVModSettings.h"
#include "SWGFreqTrackerReport.h"
#include "SWGFreqTrackerSettings.h"
#include "SWGFrequency.h"
#include "SWGFrequencyBand.h"
#include "SWGFrequencyRange.h"
#include "SWGGLScope.h"
#include "SWGGLSpectrum.h"
#include "SWGGS232ControllerActions.h"
#include "SWGGS232ControllerReport.h"
#include "SWGGS232ControllerSettings.h"
#include "SWGGain.h"
#include "SWGHackRFInputSettings.h"
#include "SWGHackRFOutputSettings.h"
#include "SWGIEEE_802_15_4_ModActions.h"
#include "SWGIEEE_802_15_4_ModReport.h"
#include "SWGIEEE_802_15_4_ModSettings.h"
#include "SWGInstanceChannelsResponse.h"
#include "SWGInstanceConfigResponse.h"
#include "SWGInstanceDevicesResponse.h"
#include "SWGInstanceFeaturesResponse.h"
#include "SWGInstanceSummaryResponse.h"
#include "SWGInterferometerSettings.h"
#include "SWGJogdialControllerSettings.h"
#include "SWGKiwiSDRReport.h"
#include "SWGKiwiSDRSettings.h"
#include "SWGLimeRFEActions.h"
#include "SWGLimeRFEDevice.h"
#include "SWGLimeRFEDevices.h"
#include "SWGLimeRFEReport.h"
#include "SWGLimeRFESettings.h"
#include "SWGLimeSdrInputReport.h"
#include "SWGLimeSdrInputSettings.h"
#include "SWGLimeSdrMIMOReport.h"
#include "SWGLimeSdrMIMOSettings.h"
#include "SWGLimeSdrOutputReport.h"
#include "SWGLimeSdrOutputSettings.h"
#include "SWGLocalInputReport.h"
#include "SWGLocalInputSettings.h"
#include "SWGLocalOutputReport.h"
#include "SWGLocalOutputSettings.h"
#include "SWGLocalSinkSettings.h"
#include "SWGLocalSourceSettings.h"
#include "SWGLocationInformation.h"
#include "SWGLoggingInfo.h"
#include "SWGM17DemodReport.h"
#include "SWGM17DemodSettings.h"
#include "SWGM17ModReport.h"
#include "SWGM17ModSettings.h"
#include "SWGMapActions.h"
#include "SWGMapAnimation.h"
#include "SWGMapCoordinate.h"
#include "SWGMapItem.h"
#include "SWGMapItem_2.h"
#include "SWGMapReport.h"
#include "SWGMapSettings.h"
#include "SWGMetisMISOSettings.h"
#include "SWGNFMDemodReport.h"
#include "SWGNFMDemodSettings.h"
#include "SWGNFMModReport.h"
#include "SWGNFMModSettings.h"
#include "SWGNamedEnum.h"
#include "SWGNoiseFigureReport.h"
#include "SWGNoiseFigureSettings.h"
#include "SWGPERTesterActions.h"
#include "SWGPERTesterActions_aos.h"
#include "SWGPERTesterReport.h"
#include "SWGPERTesterSettings.h"
#include "SWGPacketDemodReport.h"
#include "SWGPacketDemodSettings.h"
#include "SWGPacketModActions.h"
#include "SWGPacketModActions_payload.h"
#include "SWGPacketModReport.h"
#include "SWGPacketModSettings.h"
#include "SWGPagerDemodReport.h"
#include "SWGPagerDemodSettings.h"
#include "SWGPerseusReport.h"
#include "SWGPerseusSettings.h"
#include "SWGPlutoSdrInputReport.h"
#include "SWGPlutoSdrInputSettings.h"
#include "SWGPlutoSdrMIMOReport.h"
#include "SWGPlutoSdrMIMOSettings.h"
#include "SWGPlutoSdrOutputReport.h"
#include "SWGPlutoSdrOutputSettings.h"
#include "SWGPreferences.h"
#include "SWGPreset.h"
#include "SWGPresetExport.h"
#include "SWGPresetGroup.h"
#include "SWGPresetIdentifier.h"
#include "SWGPresetImport.h"
#include "SWGPresetItem.h"
#include "SWGPresetTransfer.h"
#include "SWGPresets.h"
#include "SWGRDSReport.h"
#include "SWGRDSReport_altFrequencies.h"
#include "SWGRadioAstronomyActions.h"
#include "SWGRadioAstronomyReport.h"
#include "SWGRadioAstronomySettings.h"
#include "SWGRadioClockReport.h"
#include "SWGRadioClockSettings.h"
#include "SWGRadiosondeDemodReport.h"
#include "SWGRadiosondeDemodSettings.h"
#include "SWGRadiosondeSettings.h"
#include "SWGRange.h"
#include "SWGRangeFloat.h"
#include "SWGRemoteInputReport.h"
#include "SWGRemoteInputSettings.h"
#include "SWGRemoteOutputReport.h"
#include "SWGRemoteOutputSettings.h"
#include "SWGRemoteSinkSettings.h"
#include "SWGRemoteSourceReport.h"
#include "SWGRemoteSourceSettings.h"
#include "SWGRemoteTCPInputReport.h"
#include "SWGRemoteTCPInputSettings.h"
#include "SWGRemoteTCPSinkSettings.h"
#include "SWGRigCtlServerActions.h"
#include "SWGRigCtlServerReport.h"
#include "SWGRigCtlServerSettings.h"
#include "SWGRollupChildState.h"
#include "SWGRollupState.h"
#include "SWGRtlSdrReport.h"
#include "SWGRtlSdrSettings.h"
#include "SWGSDRPlayReport.h"
#include "SWGSDRPlaySettings.h"
#include "SWGSDRPlayV3Report.h"
#include "SWGSDRPlayV3Settings.h"
#include "SWGSSBDemodReport.h"
#include "SWGSSBDemodSettings.h"
#include "SWGSSBModReport.h"
#include "SWGSSBModSettings.h"
#include "SWGSampleRate.h"
#include "SWGSamplingDevice.h"
#include "SWGSatelliteDeviceSettings.h"
#include "SWGSatelliteDeviceSettingsList.h"
#include "SWGSatellitePass.h"
#include "SWGSatelliteState.h"
#include "SWGSatelliteTrackerActions.h"
#include "SWGSatelliteTrackerReport.h"
#include "SWGSatelliteTrackerSettings.h"
#include "SWGSigMFFileInputActions.h"
#include "SWGSigMFFileInputReport.h"
#include "SWGSigMFFileInputSettings.h"
#include "SWGSigMFFileSinkActions.h"
#include "SWGSigMFFileSinkReport.h"
#include "SWGSigMFFileSinkSettings.h"
#include "SWGSimplePTTActions.h"
#include "SWGSimplePTTReport.h"
#include "SWGSimplePTTSettings.h"
#include "SWGSoapySDRFrequencySetting.h"
#include "SWGSoapySDRGainSetting.h"
#include "SWGSoapySDRInputSettings.h"
#include "SWGSoapySDROutputSettings.h"
#include "SWGSoapySDRReport.h"
#include "SWGSpectrumAnnotationMarker.h"
#include "SWGSpectrumCalibrationPoint.h"
#include "SWGSpectrumHistogramMarker.h"
#include "SWGSpectrumServer.h"
#include "SWGSpectrumServer_clients.h"
#include "SWGSpectrumWaterfallMarker.h"
#include "SWGStarTrackerActions.h"
#include "SWGStarTrackerDisplayLoSSettings.h"
#include "SWGStarTrackerDisplayLoSSettings_2.h"
#include "SWGStarTrackerDisplaySettings.h"
#include "SWGStarTrackerDisplaySettings_2.h"
#include "SWGStarTrackerReport.h"
#include "SWGStarTrackerSettings.h"
#include "SWGStarTrackerTarget.h"
#include "SWGStarTrackerTarget_2.h"
#include "SWGSuccessResponse.h"
#include "SWGTargetAzimuthElevation.h"
#include "SWGTestMISettings.h"
#include "SWGTestMOSyncSettings.h"
#include "SWGTestMiStreamSettings.h"
#include "SWGTestSourceSettings.h"
#include "SWGTraceData.h"
#include "SWGTriggerData.h"
#include "SWGUDPSinkReport.h"
#include "SWGUDPSinkSettings.h"
#include "SWGUDPSourceReport.h"
#include "SWGUDPSourceSettings.h"
#include "SWGUSRPInputReport.h"
#include "SWGUSRPInputSettings.h"
#include "SWGUSRPOutputReport.h"
#include "SWGUSRPOutputSettings.h"
#include "SWGVORDemodReport.h"
#include "SWGVORDemodSettings.h"
#include "SWGVORLocalizerActions.h"
#include "SWGVORLocalizerReport.h"
#include "SWGVORLocalizerSettings.h"
#include "SWGWFMDemodReport.h"
#include "SWGWFMDemodSettings.h"
#include "SWGWFMModReport.h"
#include "SWGWFMModSettings.h"
#include "SWGWorkspaceInfo.h"
#include "SWGXtrxInputReport.h"
#include "SWGXtrxInputSettings.h"
#include "SWGXtrxMIMOReport.h"
#include "SWGXtrxMIMOSettings.h"
#include "SWGXtrxOutputReport.h"
#include "SWGXtrxOutputSettings.h"

namespace SWGSDRangel {

  inline void* create(QString type) {
    if(QString("SWGADSBDemodReport").compare(type) == 0) {
      SWGADSBDemodReport *obj = new SWGADSBDemodReport();
      obj->init();
      return obj;
    }
    if(QString("SWGADSBDemodSettings").compare(type) == 0) {
      SWGADSBDemodSettings *obj = new SWGADSBDemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGAFCActions").compare(type) == 0) {
      SWGAFCActions *obj = new SWGAFCActions();
      obj->init();
      return obj;
    }
    if(QString("SWGAFCReport").compare(type) == 0) {
      SWGAFCReport *obj = new SWGAFCReport();
      obj->init();
      return obj;
    }
    if(QString("SWGAFCSettings").compare(type) == 0) {
      SWGAFCSettings *obj = new SWGAFCSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGAISDemodReport").compare(type) == 0) {
      SWGAISDemodReport *obj = new SWGAISDemodReport();
      obj->init();
      return obj;
    }
    if(QString("SWGAISDemodSettings").compare(type) == 0) {
      SWGAISDemodSettings *obj = new SWGAISDemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGAISModActions").compare(type) == 0) {
      SWGAISModActions *obj = new SWGAISModActions();
      obj->init();
      return obj;
    }
    if(QString("SWGAISModReport").compare(type) == 0) {
      SWGAISModReport *obj = new SWGAISModReport();
      obj->init();
      return obj;
    }
    if(QString("SWGAISModSettings").compare(type) == 0) {
      SWGAISModSettings *obj = new SWGAISModSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGAISSettings").compare(type) == 0) {
      SWGAISSettings *obj = new SWGAISSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGAMBEActions").compare(type) == 0) {
      SWGAMBEActions *obj = new SWGAMBEActions();
      obj->init();
      return obj;
    }
    if(QString("SWGAMBEDevice").compare(type) == 0) {
      SWGAMBEDevice *obj = new SWGAMBEDevice();
      obj->init();
      return obj;
    }
    if(QString("SWGAMBEDeviceReport").compare(type) == 0) {
      SWGAMBEDeviceReport *obj = new SWGAMBEDeviceReport();
      obj->init();
      return obj;
    }
    if(QString("SWGAMBEDevices").compare(type) == 0) {
      SWGAMBEDevices *obj = new SWGAMBEDevices();
      obj->init();
      return obj;
    }
    if(QString("SWGAMBEReport").compare(type) == 0) {
      SWGAMBEReport *obj = new SWGAMBEReport();
      obj->init();
      return obj;
    }
    if(QString("SWGAMBESettings").compare(type) == 0) {
      SWGAMBESettings *obj = new SWGAMBESettings();
      obj->init();
      return obj;
    }
    if(QString("SWGAMDemodReport").compare(type) == 0) {
      SWGAMDemodReport *obj = new SWGAMDemodReport();
      obj->init();
      return obj;
    }
    if(QString("SWGAMDemodSettings").compare(type) == 0) {
      SWGAMDemodSettings *obj = new SWGAMDemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGAMModReport").compare(type) == 0) {
      SWGAMModReport *obj = new SWGAMModReport();
      obj->init();
      return obj;
    }
    if(QString("SWGAMModSettings").compare(type) == 0) {
      SWGAMModSettings *obj = new SWGAMModSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGAPRSSettings").compare(type) == 0) {
      SWGAPRSSettings *obj = new SWGAPRSSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGAPTDemodActions").compare(type) == 0) {
      SWGAPTDemodActions *obj = new SWGAPTDemodActions();
      obj->init();
      return obj;
    }
    if(QString("SWGAPTDemodActions_aos").compare(type) == 0) {
      SWGAPTDemodActions_aos *obj = new SWGAPTDemodActions_aos();
      obj->init();
      return obj;
    }
    if(QString("SWGAPTDemodActions_los").compare(type) == 0) {
      SWGAPTDemodActions_los *obj = new SWGAPTDemodActions_los();
      obj->init();
      return obj;
    }
    if(QString("SWGAPTDemodSettings").compare(type) == 0) {
      SWGAPTDemodSettings *obj = new SWGAPTDemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGATVDemodSettings").compare(type) == 0) {
      SWGATVDemodSettings *obj = new SWGATVDemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGATVModReport").compare(type) == 0) {
      SWGATVModReport *obj = new SWGATVModReport();
      obj->init();
      return obj;
    }
    if(QString("SWGATVModSettings").compare(type) == 0) {
      SWGATVModSettings *obj = new SWGATVModSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGAirspyHFReport").compare(type) == 0) {
      SWGAirspyHFReport *obj = new SWGAirspyHFReport();
      obj->init();
      return obj;
    }
    if(QString("SWGAirspyHFSettings").compare(type) == 0) {
      SWGAirspyHFSettings *obj = new SWGAirspyHFSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGAirspyReport").compare(type) == 0) {
      SWGAirspyReport *obj = new SWGAirspyReport();
      obj->init();
      return obj;
    }
    if(QString("SWGAirspySettings").compare(type) == 0) {
      SWGAirspySettings *obj = new SWGAirspySettings();
      obj->init();
      return obj;
    }
    if(QString("SWGAntennaToolsSettings").compare(type) == 0) {
      SWGAntennaToolsSettings *obj = new SWGAntennaToolsSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGArgInfo").compare(type) == 0) {
      SWGArgInfo *obj = new SWGArgInfo();
      obj->init();
      return obj;
    }
    if(QString("SWGArgValue").compare(type) == 0) {
      SWGArgValue *obj = new SWGArgValue();
      obj->init();
      return obj;
    }
    if(QString("SWGAudioDevices").compare(type) == 0) {
      SWGAudioDevices *obj = new SWGAudioDevices();
      obj->init();
      return obj;
    }
    if(QString("SWGAudioInputDevice").compare(type) == 0) {
      SWGAudioInputDevice *obj = new SWGAudioInputDevice();
      obj->init();
      return obj;
    }
    if(QString("SWGAudioInputSettings").compare(type) == 0) {
      SWGAudioInputSettings *obj = new SWGAudioInputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGAudioOutputDevice").compare(type) == 0) {
      SWGAudioOutputDevice *obj = new SWGAudioOutputDevice();
      obj->init();
      return obj;
    }
    if(QString("SWGAudioOutputSettings").compare(type) == 0) {
      SWGAudioOutputSettings *obj = new SWGAudioOutputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGBFMDemodReport").compare(type) == 0) {
      SWGBFMDemodReport *obj = new SWGBFMDemodReport();
      obj->init();
      return obj;
    }
    if(QString("SWGBFMDemodSettings").compare(type) == 0) {
      SWGBFMDemodSettings *obj = new SWGBFMDemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGBandwidth").compare(type) == 0) {
      SWGBandwidth *obj = new SWGBandwidth();
      obj->init();
      return obj;
    }
    if(QString("SWGBase64Blob").compare(type) == 0) {
      SWGBase64Blob *obj = new SWGBase64Blob();
      obj->init();
      return obj;
    }
    if(QString("SWGBeamSteeringCWModSettings").compare(type) == 0) {
      SWGBeamSteeringCWModSettings *obj = new SWGBeamSteeringCWModSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGBladeRF1InputSettings").compare(type) == 0) {
      SWGBladeRF1InputSettings *obj = new SWGBladeRF1InputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGBladeRF1OutputSettings").compare(type) == 0) {
      SWGBladeRF1OutputSettings *obj = new SWGBladeRF1OutputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGBladeRF2InputReport").compare(type) == 0) {
      SWGBladeRF2InputReport *obj = new SWGBladeRF2InputReport();
      obj->init();
      return obj;
    }
    if(QString("SWGBladeRF2InputSettings").compare(type) == 0) {
      SWGBladeRF2InputSettings *obj = new SWGBladeRF2InputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGBladeRF2MIMOReport").compare(type) == 0) {
      SWGBladeRF2MIMOReport *obj = new SWGBladeRF2MIMOReport();
      obj->init();
      return obj;
    }
    if(QString("SWGBladeRF2MIMOSettings").compare(type) == 0) {
      SWGBladeRF2MIMOSettings *obj = new SWGBladeRF2MIMOSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGBladeRF2OutputReport").compare(type) == 0) {
      SWGBladeRF2OutputReport *obj = new SWGBladeRF2OutputReport();
      obj->init();
      return obj;
    }
    if(QString("SWGBladeRF2OutputSettings").compare(type) == 0) {
      SWGBladeRF2OutputSettings *obj = new SWGBladeRF2OutputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGCWKeyerSettings").compare(type) == 0) {
      SWGCWKeyerSettings *obj = new SWGCWKeyerSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGCapture").compare(type) == 0) {
      SWGCapture *obj = new SWGCapture();
      obj->init();
      return obj;
    }
    if(QString("SWGChannel").compare(type) == 0) {
      SWGChannel *obj = new SWGChannel();
      obj->init();
      return obj;
    }
    if(QString("SWGChannelActions").compare(type) == 0) {
      SWGChannelActions *obj = new SWGChannelActions();
      obj->init();
      return obj;
    }
    if(QString("SWGChannelAnalyzerSettings").compare(type) == 0) {
      SWGChannelAnalyzerSettings *obj = new SWGChannelAnalyzerSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGChannelConfig").compare(type) == 0) {
      SWGChannelConfig *obj = new SWGChannelConfig();
      obj->init();
      return obj;
    }
    if(QString("SWGChannelListItem").compare(type) == 0) {
      SWGChannelListItem *obj = new SWGChannelListItem();
      obj->init();
      return obj;
    }
    if(QString("SWGChannelMarker").compare(type) == 0) {
      SWGChannelMarker *obj = new SWGChannelMarker();
      obj->init();
      return obj;
    }
    if(QString("SWGChannelReport").compare(type) == 0) {
      SWGChannelReport *obj = new SWGChannelReport();
      obj->init();
      return obj;
    }
    if(QString("SWGChannelSettings").compare(type) == 0) {
      SWGChannelSettings *obj = new SWGChannelSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGChannelsDetail").compare(type) == 0) {
      SWGChannelsDetail *obj = new SWGChannelsDetail();
      obj->init();
      return obj;
    }
    if(QString("SWGChirpChatDemodReport").compare(type) == 0) {
      SWGChirpChatDemodReport *obj = new SWGChirpChatDemodReport();
      obj->init();
      return obj;
    }
    if(QString("SWGChirpChatDemodSettings").compare(type) == 0) {
      SWGChirpChatDemodSettings *obj = new SWGChirpChatDemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGChirpChatModReport").compare(type) == 0) {
      SWGChirpChatModReport *obj = new SWGChirpChatModReport();
      obj->init();
      return obj;
    }
    if(QString("SWGChirpChatModSettings").compare(type) == 0) {
      SWGChirpChatModSettings *obj = new SWGChirpChatModSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGCommand").compare(type) == 0) {
      SWGCommand *obj = new SWGCommand();
      obj->init();
      return obj;
    }
    if(QString("SWGComplex").compare(type) == 0) {
      SWGComplex *obj = new SWGComplex();
      obj->init();
      return obj;
    }
    if(QString("SWGConfigurationGroup").compare(type) == 0) {
      SWGConfigurationGroup *obj = new SWGConfigurationGroup();
      obj->init();
      return obj;
    }
    if(QString("SWGConfigurationIdentifier").compare(type) == 0) {
      SWGConfigurationIdentifier *obj = new SWGConfigurationIdentifier();
      obj->init();
      return obj;
    }
    if(QString("SWGConfigurationImportExport").compare(type) == 0) {
      SWGConfigurationImportExport *obj = new SWGConfigurationImportExport();
      obj->init();
      return obj;
    }
    if(QString("SWGConfigurationItem").compare(type) == 0) {
      SWGConfigurationItem *obj = new SWGConfigurationItem();
      obj->init();
      return obj;
    }
    if(QString("SWGConfigurations").compare(type) == 0) {
      SWGConfigurations *obj = new SWGConfigurations();
      obj->init();
      return obj;
    }
    if(QString("SWGDABDemodSettings").compare(type) == 0) {
      SWGDABDemodSettings *obj = new SWGDABDemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGDATVDemodReport").compare(type) == 0) {
      SWGDATVDemodReport *obj = new SWGDATVDemodReport();
      obj->init();
      return obj;
    }
    if(QString("SWGDATVDemodSettings").compare(type) == 0) {
      SWGDATVDemodSettings *obj = new SWGDATVDemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGDATVModReport").compare(type) == 0) {
      SWGDATVModReport *obj = new SWGDATVModReport();
      obj->init();
      return obj;
    }
    if(QString("SWGDATVModSettings").compare(type) == 0) {
      SWGDATVModSettings *obj = new SWGDATVModSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGDOA2Report").compare(type) == 0) {
      SWGDOA2Report *obj = new SWGDOA2Report();
      obj->init();
      return obj;
    }
    if(QString("SWGDOA2Settings").compare(type) == 0) {
      SWGDOA2Settings *obj = new SWGDOA2Settings();
      obj->init();
      return obj;
    }
    if(QString("SWGDSDDemodReport").compare(type) == 0) {
      SWGDSDDemodReport *obj = new SWGDSDDemodReport();
      obj->init();
      return obj;
    }
    if(QString("SWGDSDDemodSettings").compare(type) == 0) {
      SWGDSDDemodSettings *obj = new SWGDSDDemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGDVSerialDevice").compare(type) == 0) {
      SWGDVSerialDevice *obj = new SWGDVSerialDevice();
      obj->init();
      return obj;
    }
    if(QString("SWGDVSerialDevices").compare(type) == 0) {
      SWGDVSerialDevices *obj = new SWGDVSerialDevices();
      obj->init();
      return obj;
    }
    if(QString("SWGDemodAnalyzerSettings").compare(type) == 0) {
      SWGDemodAnalyzerSettings *obj = new SWGDemodAnalyzerSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGDeviceActions").compare(type) == 0) {
      SWGDeviceActions *obj = new SWGDeviceActions();
      obj->init();
      return obj;
    }
    if(QString("SWGDeviceConfig").compare(type) == 0) {
      SWGDeviceConfig *obj = new SWGDeviceConfig();
      obj->init();
      return obj;
    }
    if(QString("SWGDeviceListItem").compare(type) == 0) {
      SWGDeviceListItem *obj = new SWGDeviceListItem();
      obj->init();
      return obj;
    }
    if(QString("SWGDeviceReport").compare(type) == 0) {
      SWGDeviceReport *obj = new SWGDeviceReport();
      obj->init();
      return obj;
    }
    if(QString("SWGDeviceSet").compare(type) == 0) {
      SWGDeviceSet *obj = new SWGDeviceSet();
      obj->init();
      return obj;
    }
    if(QString("SWGDeviceSetList").compare(type) == 0) {
      SWGDeviceSetList *obj = new SWGDeviceSetList();
      obj->init();
      return obj;
    }
    if(QString("SWGDeviceSettings").compare(type) == 0) {
      SWGDeviceSettings *obj = new SWGDeviceSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGDeviceState").compare(type) == 0) {
      SWGDeviceState *obj = new SWGDeviceState();
      obj->init();
      return obj;
    }
    if(QString("SWGErrorResponse").compare(type) == 0) {
      SWGErrorResponse *obj = new SWGErrorResponse();
      obj->init();
      return obj;
    }
    if(QString("SWGFCDProPlusSettings").compare(type) == 0) {
      SWGFCDProPlusSettings *obj = new SWGFCDProPlusSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGFCDProSettings").compare(type) == 0) {
      SWGFCDProSettings *obj = new SWGFCDProSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGFeature").compare(type) == 0) {
      SWGFeature *obj = new SWGFeature();
      obj->init();
      return obj;
    }
    if(QString("SWGFeatureActions").compare(type) == 0) {
      SWGFeatureActions *obj = new SWGFeatureActions();
      obj->init();
      return obj;
    }
    if(QString("SWGFeatureConfig").compare(type) == 0) {
      SWGFeatureConfig *obj = new SWGFeatureConfig();
      obj->init();
      return obj;
    }
    if(QString("SWGFeatureListItem").compare(type) == 0) {
      SWGFeatureListItem *obj = new SWGFeatureListItem();
      obj->init();
      return obj;
    }
    if(QString("SWGFeaturePresetGroup").compare(type) == 0) {
      SWGFeaturePresetGroup *obj = new SWGFeaturePresetGroup();
      obj->init();
      return obj;
    }
    if(QString("SWGFeaturePresetIdentifier").compare(type) == 0) {
      SWGFeaturePresetIdentifier *obj = new SWGFeaturePresetIdentifier();
      obj->init();
      return obj;
    }
    if(QString("SWGFeaturePresetItem").compare(type) == 0) {
      SWGFeaturePresetItem *obj = new SWGFeaturePresetItem();
      obj->init();
      return obj;
    }
    if(QString("SWGFeaturePresets").compare(type) == 0) {
      SWGFeaturePresets *obj = new SWGFeaturePresets();
      obj->init();
      return obj;
    }
    if(QString("SWGFeatureReport").compare(type) == 0) {
      SWGFeatureReport *obj = new SWGFeatureReport();
      obj->init();
      return obj;
    }
    if(QString("SWGFeatureSet").compare(type) == 0) {
      SWGFeatureSet *obj = new SWGFeatureSet();
      obj->init();
      return obj;
    }
    if(QString("SWGFeatureSetPreset").compare(type) == 0) {
      SWGFeatureSetPreset *obj = new SWGFeatureSetPreset();
      obj->init();
      return obj;
    }
    if(QString("SWGFeatureSettings").compare(type) == 0) {
      SWGFeatureSettings *obj = new SWGFeatureSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGFileInputReport").compare(type) == 0) {
      SWGFileInputReport *obj = new SWGFileInputReport();
      obj->init();
      return obj;
    }
    if(QString("SWGFileInputSettings").compare(type) == 0) {
      SWGFileInputSettings *obj = new SWGFileInputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGFileOutputSettings").compare(type) == 0) {
      SWGFileOutputSettings *obj = new SWGFileOutputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGFilePath").compare(type) == 0) {
      SWGFilePath *obj = new SWGFilePath();
      obj->init();
      return obj;
    }
    if(QString("SWGFileSinkActions").compare(type) == 0) {
      SWGFileSinkActions *obj = new SWGFileSinkActions();
      obj->init();
      return obj;
    }
    if(QString("SWGFileSinkReport").compare(type) == 0) {
      SWGFileSinkReport *obj = new SWGFileSinkReport();
      obj->init();
      return obj;
    }
    if(QString("SWGFileSinkSettings").compare(type) == 0) {
      SWGFileSinkSettings *obj = new SWGFileSinkSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGFileSourceActions").compare(type) == 0) {
      SWGFileSourceActions *obj = new SWGFileSourceActions();
      obj->init();
      return obj;
    }
    if(QString("SWGFileSourceReport").compare(type) == 0) {
      SWGFileSourceReport *obj = new SWGFileSourceReport();
      obj->init();
      return obj;
    }
    if(QString("SWGFileSourceSettings").compare(type) == 0) {
      SWGFileSourceSettings *obj = new SWGFileSourceSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGFreeDVDemodReport").compare(type) == 0) {
      SWGFreeDVDemodReport *obj = new SWGFreeDVDemodReport();
      obj->init();
      return obj;
    }
    if(QString("SWGFreeDVDemodSettings").compare(type) == 0) {
      SWGFreeDVDemodSettings *obj = new SWGFreeDVDemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGFreeDVModReport").compare(type) == 0) {
      SWGFreeDVModReport *obj = new SWGFreeDVModReport();
      obj->init();
      return obj;
    }
    if(QString("SWGFreeDVModSettings").compare(type) == 0) {
      SWGFreeDVModSettings *obj = new SWGFreeDVModSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGFreqTrackerReport").compare(type) == 0) {
      SWGFreqTrackerReport *obj = new SWGFreqTrackerReport();
      obj->init();
      return obj;
    }
    if(QString("SWGFreqTrackerSettings").compare(type) == 0) {
      SWGFreqTrackerSettings *obj = new SWGFreqTrackerSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGFrequency").compare(type) == 0) {
      SWGFrequency *obj = new SWGFrequency();
      obj->init();
      return obj;
    }
    if(QString("SWGFrequencyBand").compare(type) == 0) {
      SWGFrequencyBand *obj = new SWGFrequencyBand();
      obj->init();
      return obj;
    }
    if(QString("SWGFrequencyRange").compare(type) == 0) {
      SWGFrequencyRange *obj = new SWGFrequencyRange();
      obj->init();
      return obj;
    }
    if(QString("SWGGLScope").compare(type) == 0) {
      SWGGLScope *obj = new SWGGLScope();
      obj->init();
      return obj;
    }
    if(QString("SWGGLSpectrum").compare(type) == 0) {
      SWGGLSpectrum *obj = new SWGGLSpectrum();
      obj->init();
      return obj;
    }
    if(QString("SWGGS232ControllerActions").compare(type) == 0) {
      SWGGS232ControllerActions *obj = new SWGGS232ControllerActions();
      obj->init();
      return obj;
    }
    if(QString("SWGGS232ControllerReport").compare(type) == 0) {
      SWGGS232ControllerReport *obj = new SWGGS232ControllerReport();
      obj->init();
      return obj;
    }
    if(QString("SWGGS232ControllerSettings").compare(type) == 0) {
      SWGGS232ControllerSettings *obj = new SWGGS232ControllerSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGGain").compare(type) == 0) {
      SWGGain *obj = new SWGGain();
      obj->init();
      return obj;
    }
    if(QString("SWGHackRFInputSettings").compare(type) == 0) {
      SWGHackRFInputSettings *obj = new SWGHackRFInputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGHackRFOutputSettings").compare(type) == 0) {
      SWGHackRFOutputSettings *obj = new SWGHackRFOutputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGIEEE_802_15_4_ModActions").compare(type) == 0) {
      SWGIEEE_802_15_4_ModActions *obj = new SWGIEEE_802_15_4_ModActions();
      obj->init();
      return obj;
    }
    if(QString("SWGIEEE_802_15_4_ModReport").compare(type) == 0) {
      SWGIEEE_802_15_4_ModReport *obj = new SWGIEEE_802_15_4_ModReport();
      obj->init();
      return obj;
    }
    if(QString("SWGIEEE_802_15_4_ModSettings").compare(type) == 0) {
      SWGIEEE_802_15_4_ModSettings *obj = new SWGIEEE_802_15_4_ModSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGInstanceChannelsResponse").compare(type) == 0) {
      SWGInstanceChannelsResponse *obj = new SWGInstanceChannelsResponse();
      obj->init();
      return obj;
    }
    if(QString("SWGInstanceConfigResponse").compare(type) == 0) {
      SWGInstanceConfigResponse *obj = new SWGInstanceConfigResponse();
      obj->init();
      return obj;
    }
    if(QString("SWGInstanceDevicesResponse").compare(type) == 0) {
      SWGInstanceDevicesResponse *obj = new SWGInstanceDevicesResponse();
      obj->init();
      return obj;
    }
    if(QString("SWGInstanceFeaturesResponse").compare(type) == 0) {
      SWGInstanceFeaturesResponse *obj = new SWGInstanceFeaturesResponse();
      obj->init();
      return obj;
    }
    if(QString("SWGInstanceSummaryResponse").compare(type) == 0) {
      SWGInstanceSummaryResponse *obj = new SWGInstanceSummaryResponse();
      obj->init();
      return obj;
    }
    if(QString("SWGInterferometerSettings").compare(type) == 0) {
      SWGInterferometerSettings *obj = new SWGInterferometerSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGJogdialControllerSettings").compare(type) == 0) {
      SWGJogdialControllerSettings *obj = new SWGJogdialControllerSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGKiwiSDRReport").compare(type) == 0) {
      SWGKiwiSDRReport *obj = new SWGKiwiSDRReport();
      obj->init();
      return obj;
    }
    if(QString("SWGKiwiSDRSettings").compare(type) == 0) {
      SWGKiwiSDRSettings *obj = new SWGKiwiSDRSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGLimeRFEActions").compare(type) == 0) {
      SWGLimeRFEActions *obj = new SWGLimeRFEActions();
      obj->init();
      return obj;
    }
    if(QString("SWGLimeRFEDevice").compare(type) == 0) {
      SWGLimeRFEDevice *obj = new SWGLimeRFEDevice();
      obj->init();
      return obj;
    }
    if(QString("SWGLimeRFEDevices").compare(type) == 0) {
      SWGLimeRFEDevices *obj = new SWGLimeRFEDevices();
      obj->init();
      return obj;
    }
    if(QString("SWGLimeRFEReport").compare(type) == 0) {
      SWGLimeRFEReport *obj = new SWGLimeRFEReport();
      obj->init();
      return obj;
    }
    if(QString("SWGLimeRFESettings").compare(type) == 0) {
      SWGLimeRFESettings *obj = new SWGLimeRFESettings();
      obj->init();
      return obj;
    }
    if(QString("SWGLimeSdrInputReport").compare(type) == 0) {
      SWGLimeSdrInputReport *obj = new SWGLimeSdrInputReport();
      obj->init();
      return obj;
    }
    if(QString("SWGLimeSdrInputSettings").compare(type) == 0) {
      SWGLimeSdrInputSettings *obj = new SWGLimeSdrInputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGLimeSdrMIMOReport").compare(type) == 0) {
      SWGLimeSdrMIMOReport *obj = new SWGLimeSdrMIMOReport();
      obj->init();
      return obj;
    }
    if(QString("SWGLimeSdrMIMOSettings").compare(type) == 0) {
      SWGLimeSdrMIMOSettings *obj = new SWGLimeSdrMIMOSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGLimeSdrOutputReport").compare(type) == 0) {
      SWGLimeSdrOutputReport *obj = new SWGLimeSdrOutputReport();
      obj->init();
      return obj;
    }
    if(QString("SWGLimeSdrOutputSettings").compare(type) == 0) {
      SWGLimeSdrOutputSettings *obj = new SWGLimeSdrOutputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGLocalInputReport").compare(type) == 0) {
      SWGLocalInputReport *obj = new SWGLocalInputReport();
      obj->init();
      return obj;
    }
    if(QString("SWGLocalInputSettings").compare(type) == 0) {
      SWGLocalInputSettings *obj = new SWGLocalInputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGLocalOutputReport").compare(type) == 0) {
      SWGLocalOutputReport *obj = new SWGLocalOutputReport();
      obj->init();
      return obj;
    }
    if(QString("SWGLocalOutputSettings").compare(type) == 0) {
      SWGLocalOutputSettings *obj = new SWGLocalOutputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGLocalSinkSettings").compare(type) == 0) {
      SWGLocalSinkSettings *obj = new SWGLocalSinkSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGLocalSourceSettings").compare(type) == 0) {
      SWGLocalSourceSettings *obj = new SWGLocalSourceSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGLocationInformation").compare(type) == 0) {
      SWGLocationInformation *obj = new SWGLocationInformation();
      obj->init();
      return obj;
    }
    if(QString("SWGLoggingInfo").compare(type) == 0) {
      SWGLoggingInfo *obj = new SWGLoggingInfo();
      obj->init();
      return obj;
    }
    if(QString("SWGM17DemodReport").compare(type) == 0) {
      SWGM17DemodReport *obj = new SWGM17DemodReport();
      obj->init();
      return obj;
    }
    if(QString("SWGM17DemodSettings").compare(type) == 0) {
      SWGM17DemodSettings *obj = new SWGM17DemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGM17ModReport").compare(type) == 0) {
      SWGM17ModReport *obj = new SWGM17ModReport();
      obj->init();
      return obj;
    }
    if(QString("SWGM17ModSettings").compare(type) == 0) {
      SWGM17ModSettings *obj = new SWGM17ModSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGMapActions").compare(type) == 0) {
      SWGMapActions *obj = new SWGMapActions();
      obj->init();
      return obj;
    }
    if(QString("SWGMapAnimation").compare(type) == 0) {
      SWGMapAnimation *obj = new SWGMapAnimation();
      obj->init();
      return obj;
    }
    if(QString("SWGMapCoordinate").compare(type) == 0) {
      SWGMapCoordinate *obj = new SWGMapCoordinate();
      obj->init();
      return obj;
    }
    if(QString("SWGMapItem").compare(type) == 0) {
      SWGMapItem *obj = new SWGMapItem();
      obj->init();
      return obj;
    }
    if(QString("SWGMapItem_2").compare(type) == 0) {
      SWGMapItem_2 *obj = new SWGMapItem_2();
      obj->init();
      return obj;
    }
    if(QString("SWGMapReport").compare(type) == 0) {
      SWGMapReport *obj = new SWGMapReport();
      obj->init();
      return obj;
    }
    if(QString("SWGMapSettings").compare(type) == 0) {
      SWGMapSettings *obj = new SWGMapSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGMetisMISOSettings").compare(type) == 0) {
      SWGMetisMISOSettings *obj = new SWGMetisMISOSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGNFMDemodReport").compare(type) == 0) {
      SWGNFMDemodReport *obj = new SWGNFMDemodReport();
      obj->init();
      return obj;
    }
    if(QString("SWGNFMDemodSettings").compare(type) == 0) {
      SWGNFMDemodSettings *obj = new SWGNFMDemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGNFMModReport").compare(type) == 0) {
      SWGNFMModReport *obj = new SWGNFMModReport();
      obj->init();
      return obj;
    }
    if(QString("SWGNFMModSettings").compare(type) == 0) {
      SWGNFMModSettings *obj = new SWGNFMModSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGNamedEnum").compare(type) == 0) {
      SWGNamedEnum *obj = new SWGNamedEnum();
      obj->init();
      return obj;
    }
    if(QString("SWGNoiseFigureReport").compare(type) == 0) {
      SWGNoiseFigureReport *obj = new SWGNoiseFigureReport();
      obj->init();
      return obj;
    }
    if(QString("SWGNoiseFigureSettings").compare(type) == 0) {
      SWGNoiseFigureSettings *obj = new SWGNoiseFigureSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGPERTesterActions").compare(type) == 0) {
      SWGPERTesterActions *obj = new SWGPERTesterActions();
      obj->init();
      return obj;
    }
    if(QString("SWGPERTesterActions_aos").compare(type) == 0) {
      SWGPERTesterActions_aos *obj = new SWGPERTesterActions_aos();
      obj->init();
      return obj;
    }
    if(QString("SWGPERTesterReport").compare(type) == 0) {
      SWGPERTesterReport *obj = new SWGPERTesterReport();
      obj->init();
      return obj;
    }
    if(QString("SWGPERTesterSettings").compare(type) == 0) {
      SWGPERTesterSettings *obj = new SWGPERTesterSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGPacketDemodReport").compare(type) == 0) {
      SWGPacketDemodReport *obj = new SWGPacketDemodReport();
      obj->init();
      return obj;
    }
    if(QString("SWGPacketDemodSettings").compare(type) == 0) {
      SWGPacketDemodSettings *obj = new SWGPacketDemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGPacketModActions").compare(type) == 0) {
      SWGPacketModActions *obj = new SWGPacketModActions();
      obj->init();
      return obj;
    }
    if(QString("SWGPacketModActions_payload").compare(type) == 0) {
      SWGPacketModActions_payload *obj = new SWGPacketModActions_payload();
      obj->init();
      return obj;
    }
    if(QString("SWGPacketModReport").compare(type) == 0) {
      SWGPacketModReport *obj = new SWGPacketModReport();
      obj->init();
      return obj;
    }
    if(QString("SWGPacketModSettings").compare(type) == 0) {
      SWGPacketModSettings *obj = new SWGPacketModSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGPagerDemodReport").compare(type) == 0) {
      SWGPagerDemodReport *obj = new SWGPagerDemodReport();
      obj->init();
      return obj;
    }
    if(QString("SWGPagerDemodSettings").compare(type) == 0) {
      SWGPagerDemodSettings *obj = new SWGPagerDemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGPerseusReport").compare(type) == 0) {
      SWGPerseusReport *obj = new SWGPerseusReport();
      obj->init();
      return obj;
    }
    if(QString("SWGPerseusSettings").compare(type) == 0) {
      SWGPerseusSettings *obj = new SWGPerseusSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGPlutoSdrInputReport").compare(type) == 0) {
      SWGPlutoSdrInputReport *obj = new SWGPlutoSdrInputReport();
      obj->init();
      return obj;
    }
    if(QString("SWGPlutoSdrInputSettings").compare(type) == 0) {
      SWGPlutoSdrInputSettings *obj = new SWGPlutoSdrInputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGPlutoSdrMIMOReport").compare(type) == 0) {
      SWGPlutoSdrMIMOReport *obj = new SWGPlutoSdrMIMOReport();
      obj->init();
      return obj;
    }
    if(QString("SWGPlutoSdrMIMOSettings").compare(type) == 0) {
      SWGPlutoSdrMIMOSettings *obj = new SWGPlutoSdrMIMOSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGPlutoSdrOutputReport").compare(type) == 0) {
      SWGPlutoSdrOutputReport *obj = new SWGPlutoSdrOutputReport();
      obj->init();
      return obj;
    }
    if(QString("SWGPlutoSdrOutputSettings").compare(type) == 0) {
      SWGPlutoSdrOutputSettings *obj = new SWGPlutoSdrOutputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGPreferences").compare(type) == 0) {
      SWGPreferences *obj = new SWGPreferences();
      obj->init();
      return obj;
    }
    if(QString("SWGPreset").compare(type) == 0) {
      SWGPreset *obj = new SWGPreset();
      obj->init();
      return obj;
    }
    if(QString("SWGPresetExport").compare(type) == 0) {
      SWGPresetExport *obj = new SWGPresetExport();
      obj->init();
      return obj;
    }
    if(QString("SWGPresetGroup").compare(type) == 0) {
      SWGPresetGroup *obj = new SWGPresetGroup();
      obj->init();
      return obj;
    }
    if(QString("SWGPresetIdentifier").compare(type) == 0) {
      SWGPresetIdentifier *obj = new SWGPresetIdentifier();
      obj->init();
      return obj;
    }
    if(QString("SWGPresetImport").compare(type) == 0) {
      SWGPresetImport *obj = new SWGPresetImport();
      obj->init();
      return obj;
    }
    if(QString("SWGPresetItem").compare(type) == 0) {
      SWGPresetItem *obj = new SWGPresetItem();
      obj->init();
      return obj;
    }
    if(QString("SWGPresetTransfer").compare(type) == 0) {
      SWGPresetTransfer *obj = new SWGPresetTransfer();
      obj->init();
      return obj;
    }
    if(QString("SWGPresets").compare(type) == 0) {
      SWGPresets *obj = new SWGPresets();
      obj->init();
      return obj;
    }
    if(QString("SWGRDSReport").compare(type) == 0) {
      SWGRDSReport *obj = new SWGRDSReport();
      obj->init();
      return obj;
    }
    if(QString("SWGRDSReport_altFrequencies").compare(type) == 0) {
      SWGRDSReport_altFrequencies *obj = new SWGRDSReport_altFrequencies();
      obj->init();
      return obj;
    }
    if(QString("SWGRadioAstronomyActions").compare(type) == 0) {
      SWGRadioAstronomyActions *obj = new SWGRadioAstronomyActions();
      obj->init();
      return obj;
    }
    if(QString("SWGRadioAstronomyReport").compare(type) == 0) {
      SWGRadioAstronomyReport *obj = new SWGRadioAstronomyReport();
      obj->init();
      return obj;
    }
    if(QString("SWGRadioAstronomySettings").compare(type) == 0) {
      SWGRadioAstronomySettings *obj = new SWGRadioAstronomySettings();
      obj->init();
      return obj;
    }
    if(QString("SWGRadioClockReport").compare(type) == 0) {
      SWGRadioClockReport *obj = new SWGRadioClockReport();
      obj->init();
      return obj;
    }
    if(QString("SWGRadioClockSettings").compare(type) == 0) {
      SWGRadioClockSettings *obj = new SWGRadioClockSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGRadiosondeDemodReport").compare(type) == 0) {
      SWGRadiosondeDemodReport *obj = new SWGRadiosondeDemodReport();
      obj->init();
      return obj;
    }
    if(QString("SWGRadiosondeDemodSettings").compare(type) == 0) {
      SWGRadiosondeDemodSettings *obj = new SWGRadiosondeDemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGRadiosondeSettings").compare(type) == 0) {
      SWGRadiosondeSettings *obj = new SWGRadiosondeSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGRange").compare(type) == 0) {
      SWGRange *obj = new SWGRange();
      obj->init();
      return obj;
    }
    if(QString("SWGRangeFloat").compare(type) == 0) {
      SWGRangeFloat *obj = new SWGRangeFloat();
      obj->init();
      return obj;
    }
    if(QString("SWGRemoteInputReport").compare(type) == 0) {
      SWGRemoteInputReport *obj = new SWGRemoteInputReport();
      obj->init();
      return obj;
    }
    if(QString("SWGRemoteInputSettings").compare(type) == 0) {
      SWGRemoteInputSettings *obj = new SWGRemoteInputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGRemoteOutputReport").compare(type) == 0) {
      SWGRemoteOutputReport *obj = new SWGRemoteOutputReport();
      obj->init();
      return obj;
    }
    if(QString("SWGRemoteOutputSettings").compare(type) == 0) {
      SWGRemoteOutputSettings *obj = new SWGRemoteOutputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGRemoteSinkSettings").compare(type) == 0) {
      SWGRemoteSinkSettings *obj = new SWGRemoteSinkSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGRemoteSourceReport").compare(type) == 0) {
      SWGRemoteSourceReport *obj = new SWGRemoteSourceReport();
      obj->init();
      return obj;
    }
    if(QString("SWGRemoteSourceSettings").compare(type) == 0) {
      SWGRemoteSourceSettings *obj = new SWGRemoteSourceSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGRemoteTCPInputReport").compare(type) == 0) {
      SWGRemoteTCPInputReport *obj = new SWGRemoteTCPInputReport();
      obj->init();
      return obj;
    }
    if(QString("SWGRemoteTCPInputSettings").compare(type) == 0) {
      SWGRemoteTCPInputSettings *obj = new SWGRemoteTCPInputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGRemoteTCPSinkSettings").compare(type) == 0) {
      SWGRemoteTCPSinkSettings *obj = new SWGRemoteTCPSinkSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGRigCtlServerActions").compare(type) == 0) {
      SWGRigCtlServerActions *obj = new SWGRigCtlServerActions();
      obj->init();
      return obj;
    }
    if(QString("SWGRigCtlServerReport").compare(type) == 0) {
      SWGRigCtlServerReport *obj = new SWGRigCtlServerReport();
      obj->init();
      return obj;
    }
    if(QString("SWGRigCtlServerSettings").compare(type) == 0) {
      SWGRigCtlServerSettings *obj = new SWGRigCtlServerSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGRollupChildState").compare(type) == 0) {
      SWGRollupChildState *obj = new SWGRollupChildState();
      obj->init();
      return obj;
    }
    if(QString("SWGRollupState").compare(type) == 0) {
      SWGRollupState *obj = new SWGRollupState();
      obj->init();
      return obj;
    }
    if(QString("SWGRtlSdrReport").compare(type) == 0) {
      SWGRtlSdrReport *obj = new SWGRtlSdrReport();
      obj->init();
      return obj;
    }
    if(QString("SWGRtlSdrSettings").compare(type) == 0) {
      SWGRtlSdrSettings *obj = new SWGRtlSdrSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGSDRPlayReport").compare(type) == 0) {
      SWGSDRPlayReport *obj = new SWGSDRPlayReport();
      obj->init();
      return obj;
    }
    if(QString("SWGSDRPlaySettings").compare(type) == 0) {
      SWGSDRPlaySettings *obj = new SWGSDRPlaySettings();
      obj->init();
      return obj;
    }
    if(QString("SWGSDRPlayV3Report").compare(type) == 0) {
      SWGSDRPlayV3Report *obj = new SWGSDRPlayV3Report();
      obj->init();
      return obj;
    }
    if(QString("SWGSDRPlayV3Settings").compare(type) == 0) {
      SWGSDRPlayV3Settings *obj = new SWGSDRPlayV3Settings();
      obj->init();
      return obj;
    }
    if(QString("SWGSSBDemodReport").compare(type) == 0) {
      SWGSSBDemodReport *obj = new SWGSSBDemodReport();
      obj->init();
      return obj;
    }
    if(QString("SWGSSBDemodSettings").compare(type) == 0) {
      SWGSSBDemodSettings *obj = new SWGSSBDemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGSSBModReport").compare(type) == 0) {
      SWGSSBModReport *obj = new SWGSSBModReport();
      obj->init();
      return obj;
    }
    if(QString("SWGSSBModSettings").compare(type) == 0) {
      SWGSSBModSettings *obj = new SWGSSBModSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGSampleRate").compare(type) == 0) {
      SWGSampleRate *obj = new SWGSampleRate();
      obj->init();
      return obj;
    }
    if(QString("SWGSamplingDevice").compare(type) == 0) {
      SWGSamplingDevice *obj = new SWGSamplingDevice();
      obj->init();
      return obj;
    }
    if(QString("SWGSatelliteDeviceSettings").compare(type) == 0) {
      SWGSatelliteDeviceSettings *obj = new SWGSatelliteDeviceSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGSatelliteDeviceSettingsList").compare(type) == 0) {
      SWGSatelliteDeviceSettingsList *obj = new SWGSatelliteDeviceSettingsList();
      obj->init();
      return obj;
    }
    if(QString("SWGSatellitePass").compare(type) == 0) {
      SWGSatellitePass *obj = new SWGSatellitePass();
      obj->init();
      return obj;
    }
    if(QString("SWGSatelliteState").compare(type) == 0) {
      SWGSatelliteState *obj = new SWGSatelliteState();
      obj->init();
      return obj;
    }
    if(QString("SWGSatelliteTrackerActions").compare(type) == 0) {
      SWGSatelliteTrackerActions *obj = new SWGSatelliteTrackerActions();
      obj->init();
      return obj;
    }
    if(QString("SWGSatelliteTrackerReport").compare(type) == 0) {
      SWGSatelliteTrackerReport *obj = new SWGSatelliteTrackerReport();
      obj->init();
      return obj;
    }
    if(QString("SWGSatelliteTrackerSettings").compare(type) == 0) {
      SWGSatelliteTrackerSettings *obj = new SWGSatelliteTrackerSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGSigMFFileInputActions").compare(type) == 0) {
      SWGSigMFFileInputActions *obj = new SWGSigMFFileInputActions();
      obj->init();
      return obj;
    }
    if(QString("SWGSigMFFileInputReport").compare(type) == 0) {
      SWGSigMFFileInputReport *obj = new SWGSigMFFileInputReport();
      obj->init();
      return obj;
    }
    if(QString("SWGSigMFFileInputSettings").compare(type) == 0) {
      SWGSigMFFileInputSettings *obj = new SWGSigMFFileInputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGSigMFFileSinkActions").compare(type) == 0) {
      SWGSigMFFileSinkActions *obj = new SWGSigMFFileSinkActions();
      obj->init();
      return obj;
    }
    if(QString("SWGSigMFFileSinkReport").compare(type) == 0) {
      SWGSigMFFileSinkReport *obj = new SWGSigMFFileSinkReport();
      obj->init();
      return obj;
    }
    if(QString("SWGSigMFFileSinkSettings").compare(type) == 0) {
      SWGSigMFFileSinkSettings *obj = new SWGSigMFFileSinkSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGSimplePTTActions").compare(type) == 0) {
      SWGSimplePTTActions *obj = new SWGSimplePTTActions();
      obj->init();
      return obj;
    }
    if(QString("SWGSimplePTTReport").compare(type) == 0) {
      SWGSimplePTTReport *obj = new SWGSimplePTTReport();
      obj->init();
      return obj;
    }
    if(QString("SWGSimplePTTSettings").compare(type) == 0) {
      SWGSimplePTTSettings *obj = new SWGSimplePTTSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGSoapySDRFrequencySetting").compare(type) == 0) {
      SWGSoapySDRFrequencySetting *obj = new SWGSoapySDRFrequencySetting();
      obj->init();
      return obj;
    }
    if(QString("SWGSoapySDRGainSetting").compare(type) == 0) {
      SWGSoapySDRGainSetting *obj = new SWGSoapySDRGainSetting();
      obj->init();
      return obj;
    }
    if(QString("SWGSoapySDRInputSettings").compare(type) == 0) {
      SWGSoapySDRInputSettings *obj = new SWGSoapySDRInputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGSoapySDROutputSettings").compare(type) == 0) {
      SWGSoapySDROutputSettings *obj = new SWGSoapySDROutputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGSoapySDRReport").compare(type) == 0) {
      SWGSoapySDRReport *obj = new SWGSoapySDRReport();
      obj->init();
      return obj;
    }
    if(QString("SWGSpectrumAnnotationMarker").compare(type) == 0) {
      SWGSpectrumAnnotationMarker *obj = new SWGSpectrumAnnotationMarker();
      obj->init();
      return obj;
    }
    if(QString("SWGSpectrumCalibrationPoint").compare(type) == 0) {
      SWGSpectrumCalibrationPoint *obj = new SWGSpectrumCalibrationPoint();
      obj->init();
      return obj;
    }
    if(QString("SWGSpectrumHistogramMarker").compare(type) == 0) {
      SWGSpectrumHistogramMarker *obj = new SWGSpectrumHistogramMarker();
      obj->init();
      return obj;
    }
    if(QString("SWGSpectrumServer").compare(type) == 0) {
      SWGSpectrumServer *obj = new SWGSpectrumServer();
      obj->init();
      return obj;
    }
    if(QString("SWGSpectrumServer_clients").compare(type) == 0) {
      SWGSpectrumServer_clients *obj = new SWGSpectrumServer_clients();
      obj->init();
      return obj;
    }
    if(QString("SWGSpectrumWaterfallMarker").compare(type) == 0) {
      SWGSpectrumWaterfallMarker *obj = new SWGSpectrumWaterfallMarker();
      obj->init();
      return obj;
    }
    if(QString("SWGStarTrackerActions").compare(type) == 0) {
      SWGStarTrackerActions *obj = new SWGStarTrackerActions();
      obj->init();
      return obj;
    }
    if(QString("SWGStarTrackerDisplayLoSSettings").compare(type) == 0) {
      SWGStarTrackerDisplayLoSSettings *obj = new SWGStarTrackerDisplayLoSSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGStarTrackerDisplayLoSSettings_2").compare(type) == 0) {
      SWGStarTrackerDisplayLoSSettings_2 *obj = new SWGStarTrackerDisplayLoSSettings_2();
      obj->init();
      return obj;
    }
    if(QString("SWGStarTrackerDisplaySettings").compare(type) == 0) {
      SWGStarTrackerDisplaySettings *obj = new SWGStarTrackerDisplaySettings();
      obj->init();
      return obj;
    }
    if(QString("SWGStarTrackerDisplaySettings_2").compare(type) == 0) {
      SWGStarTrackerDisplaySettings_2 *obj = new SWGStarTrackerDisplaySettings_2();
      obj->init();
      return obj;
    }
    if(QString("SWGStarTrackerReport").compare(type) == 0) {
      SWGStarTrackerReport *obj = new SWGStarTrackerReport();
      obj->init();
      return obj;
    }
    if(QString("SWGStarTrackerSettings").compare(type) == 0) {
      SWGStarTrackerSettings *obj = new SWGStarTrackerSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGStarTrackerTarget").compare(type) == 0) {
      SWGStarTrackerTarget *obj = new SWGStarTrackerTarget();
      obj->init();
      return obj;
    }
    if(QString("SWGStarTrackerTarget_2").compare(type) == 0) {
      SWGStarTrackerTarget_2 *obj = new SWGStarTrackerTarget_2();
      obj->init();
      return obj;
    }
    if(QString("SWGSuccessResponse").compare(type) == 0) {
      SWGSuccessResponse *obj = new SWGSuccessResponse();
      obj->init();
      return obj;
    }
    if(QString("SWGTargetAzimuthElevation").compare(type) == 0) {
      SWGTargetAzimuthElevation *obj = new SWGTargetAzimuthElevation();
      obj->init();
      return obj;
    }
    if(QString("SWGTestMISettings").compare(type) == 0) {
      SWGTestMISettings *obj = new SWGTestMISettings();
      obj->init();
      return obj;
    }
    if(QString("SWGTestMOSyncSettings").compare(type) == 0) {
      SWGTestMOSyncSettings *obj = new SWGTestMOSyncSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGTestMiStreamSettings").compare(type) == 0) {
      SWGTestMiStreamSettings *obj = new SWGTestMiStreamSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGTestSourceSettings").compare(type) == 0) {
      SWGTestSourceSettings *obj = new SWGTestSourceSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGTraceData").compare(type) == 0) {
      SWGTraceData *obj = new SWGTraceData();
      obj->init();
      return obj;
    }
    if(QString("SWGTriggerData").compare(type) == 0) {
      SWGTriggerData *obj = new SWGTriggerData();
      obj->init();
      return obj;
    }
    if(QString("SWGUDPSinkReport").compare(type) == 0) {
      SWGUDPSinkReport *obj = new SWGUDPSinkReport();
      obj->init();
      return obj;
    }
    if(QString("SWGUDPSinkSettings").compare(type) == 0) {
      SWGUDPSinkSettings *obj = new SWGUDPSinkSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGUDPSourceReport").compare(type) == 0) {
      SWGUDPSourceReport *obj = new SWGUDPSourceReport();
      obj->init();
      return obj;
    }
    if(QString("SWGUDPSourceSettings").compare(type) == 0) {
      SWGUDPSourceSettings *obj = new SWGUDPSourceSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGUSRPInputReport").compare(type) == 0) {
      SWGUSRPInputReport *obj = new SWGUSRPInputReport();
      obj->init();
      return obj;
    }
    if(QString("SWGUSRPInputSettings").compare(type) == 0) {
      SWGUSRPInputSettings *obj = new SWGUSRPInputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGUSRPOutputReport").compare(type) == 0) {
      SWGUSRPOutputReport *obj = new SWGUSRPOutputReport();
      obj->init();
      return obj;
    }
    if(QString("SWGUSRPOutputSettings").compare(type) == 0) {
      SWGUSRPOutputSettings *obj = new SWGUSRPOutputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGVORDemodReport").compare(type) == 0) {
      SWGVORDemodReport *obj = new SWGVORDemodReport();
      obj->init();
      return obj;
    }
    if(QString("SWGVORDemodSettings").compare(type) == 0) {
      SWGVORDemodSettings *obj = new SWGVORDemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGVORLocalizerActions").compare(type) == 0) {
      SWGVORLocalizerActions *obj = new SWGVORLocalizerActions();
      obj->init();
      return obj;
    }
    if(QString("SWGVORLocalizerReport").compare(type) == 0) {
      SWGVORLocalizerReport *obj = new SWGVORLocalizerReport();
      obj->init();
      return obj;
    }
    if(QString("SWGVORLocalizerSettings").compare(type) == 0) {
      SWGVORLocalizerSettings *obj = new SWGVORLocalizerSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGWFMDemodReport").compare(type) == 0) {
      SWGWFMDemodReport *obj = new SWGWFMDemodReport();
      obj->init();
      return obj;
    }
    if(QString("SWGWFMDemodSettings").compare(type) == 0) {
      SWGWFMDemodSettings *obj = new SWGWFMDemodSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGWFMModReport").compare(type) == 0) {
      SWGWFMModReport *obj = new SWGWFMModReport();
      obj->init();
      return obj;
    }
    if(QString("SWGWFMModSettings").compare(type) == 0) {
      SWGWFMModSettings *obj = new SWGWFMModSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGWorkspaceInfo").compare(type) == 0) {
      SWGWorkspaceInfo *obj = new SWGWorkspaceInfo();
      obj->init();
      return obj;
    }
    if(QString("SWGXtrxInputReport").compare(type) == 0) {
      SWGXtrxInputReport *obj = new SWGXtrxInputReport();
      obj->init();
      return obj;
    }
    if(QString("SWGXtrxInputSettings").compare(type) == 0) {
      SWGXtrxInputSettings *obj = new SWGXtrxInputSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGXtrxMIMOReport").compare(type) == 0) {
      SWGXtrxMIMOReport *obj = new SWGXtrxMIMOReport();
      obj->init();
      return obj;
    }
    if(QString("SWGXtrxMIMOSettings").compare(type) == 0) {
      SWGXtrxMIMOSettings *obj = new SWGXtrxMIMOSettings();
      obj->init();
      return obj;
    }
    if(QString("SWGXtrxOutputReport").compare(type) == 0) {
      SWGXtrxOutputReport *obj = new SWGXtrxOutputReport();
      obj->init();
      return obj;
    }
    if(QString("SWGXtrxOutputSettings").compare(type) == 0) {
      SWGXtrxOutputSettings *obj = new SWGXtrxOutputSettings();
      obj->init();
      return obj;
    }
    
    return nullptr;
  }

  inline void* create(QString json, QString type) {
    void* val = create(type);
    if(val != nullptr) {
      SWGObject* obj = static_cast<SWGObject*>(val);
      return obj->fromJson(json);
    }
    if(type.startsWith("QString")) {
      return new QString();
    }
    return nullptr;
  }

}

#endif /* ModelFactory_H_ */
