#pragma once #include #include #include "LeadGroup.h" namespace Incart::Usb { class LeadGroupMap { private: const std::unordered_map leadGroups { {"Cab1", { 18, {15, 18, 19}} }, {"Cab2Nehb", { 32, {32}} }, {"Cab35", { 5, {5, 20}} }, {"Cab37MonoFrl", { 33, {33}} }, {"Cab37", { 3, {3, 4, 16, 21}} }, {"Cab6Mono", { 24, {22, 23, 24}} }, {"Cab6Ortho", { 31, {31}} }, {"Cab8Ecg", { 30, {30}} }, {"Cab8MonoFrl", { 25, {25}} }, {"Cab8Mono", { 1, {1}} }, {"Cab8", { 1, {1}} }, {"CabNone", { 17, {17}} }, {"Manual16", { 100, {100}} }, {"Manual24", { 101, {101}} } }; public: static uint8_t getLeadType(const std::string& leadGroup_) { LeadGroupMap leadGroupMap; auto it = leadGroupMap.leadGroups.find(leadGroup_); if (it == leadGroupMap.leadGroups.end()) { return 0; } return it->second.defaultLeadType; } }; } // namespace Incart::Usb