- switch (devdata->type) {
- case DEVICE_TYPE_SUUNTO_SOLUTION:
- return suunto_solution_parser_create(parser);
-
- case DEVICE_TYPE_SUUNTO_EON:
- return suunto_eon_parser_create(parser, 0);
-
- case DEVICE_TYPE_SUUNTO_VYPER:
- if (devdata->devinfo.model == 0x01)
- return suunto_eon_parser_create(parser, 1);
- return suunto_vyper_parser_create(parser);
-
- case DEVICE_TYPE_SUUNTO_VYPER2:
- case DEVICE_TYPE_SUUNTO_D9:
- return suunto_d9_parser_create(parser, devdata->devinfo.model);
-
- case DEVICE_TYPE_UWATEC_ALADIN:
- case DEVICE_TYPE_UWATEC_MEMOMOUSE:
- return uwatec_memomouse_parser_create(parser, devdata->clock.devtime, devdata->clock.systime);
-
- case DEVICE_TYPE_UWATEC_SMART:
- return uwatec_smart_parser_create(parser, devdata->devinfo.model, devdata->clock.devtime, devdata->clock.systime);
-
- case DEVICE_TYPE_REEFNET_SENSUS:
- return reefnet_sensus_parser_create(parser, devdata->clock.devtime, devdata->clock.systime);
-
- case DEVICE_TYPE_REEFNET_SENSUSPRO:
- return reefnet_sensuspro_parser_create(parser, devdata->clock.devtime, devdata->clock.systime);
-
- case DEVICE_TYPE_REEFNET_SENSUSULTRA:
- return reefnet_sensusultra_parser_create(parser, devdata->clock.devtime, devdata->clock.systime);
-
- case DEVICE_TYPE_OCEANIC_VTPRO:
- return oceanic_vtpro_parser_create(parser);
-
- case DEVICE_TYPE_OCEANIC_VEO250:
- return oceanic_veo250_parser_create(parser, devdata->devinfo.model);
-
- case DEVICE_TYPE_OCEANIC_ATOM2:
- return oceanic_atom2_parser_create(parser, devdata->devinfo.model);
-
- case DEVICE_TYPE_MARES_NEMO:
- case DEVICE_TYPE_MARES_PUCK:
- return mares_nemo_parser_create(parser, devdata->devinfo.model);
-
- case DEVICE_TYPE_MARES_ICONHD:
- return mares_iconhd_parser_create(parser, devdata->devinfo.model);
-
- case DEVICE_TYPE_HW_OSTC:
- return hw_ostc_parser_create(parser);
-
- case DEVICE_TYPE_CRESSI_EDY:
- case DEVICE_TYPE_ZEAGLE_N2ITION3:
- return cressi_edy_parser_create(parser, devdata->devinfo.model);
-
- case DEVICE_TYPE_ATOMICS_COBALT:
- return atomics_cobalt_parser_create(parser);
-
- default:
- return PARSER_STATUS_ERROR;
- }