mirror of
				https://github.com/f4exb/sdrangel.git
				synced 2025-11-03 21:20:31 -05:00 
			
		
		
		
	
		
			
	
	
		
			466 lines
		
	
	
		
			9.9 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
		
		
			
		
	
	
			466 lines
		
	
	
		
			9.9 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| 
								 | 
							
								//////////////////////////////////////////////////////////////////////////////////////////////////////////////
							 | 
						||
| 
								 | 
							
								// Copyright (C) 2021 Edouard Griffiths, F4EXB                                                              //
							 | 
						||
| 
								 | 
							
								//                                                                                                          //
							 | 
						||
| 
								 | 
							
								// This program is free software; you can redistribute it and/or modify                                     //
							 | 
						||
| 
								 | 
							
								// it under the terms of the GNU General Public License as published by                                     //
							 | 
						||
| 
								 | 
							
								// the Free Software Foundation as version 3 of the License, or                                             //
							 | 
						||
| 
								 | 
							
								// (at your option) any later version.                                                                      //
							 | 
						||
| 
								 | 
							
								//                                                                                                          //
							 | 
						||
| 
								 | 
							
								// This program is distributed in the hope that it will be useful,                                          //
							 | 
						||
| 
								 | 
							
								// but WITHOUT ANY WARRANTY; without even the implied warranty of                                           //
							 | 
						||
| 
								 | 
							
								// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the                                             //
							 | 
						||
| 
								 | 
							
								// GNU General Public License V3 for more details.                                                          //
							 | 
						||
| 
								 | 
							
								//                                                                                                          //
							 | 
						||
| 
								 | 
							
								// You should have received a copy of the GNU General Public License                                        //
							 | 
						||
| 
								 | 
							
								// along with this program. If not, see <http://www.gnu.org/licenses/>.                                     //
							 | 
						||
| 
								 | 
							
								//                                                                                                          //
							 | 
						||
| 
								 | 
							
								// Source: http://onfreq.com/syntorx/dcs.html                                                               //
							 | 
						||
| 
								 | 
							
								//                                                                                                          //
							 | 
						||
| 
								 | 
							
								//////////////////////////////////////////////////////////////////////////////////////////////////////////////
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								#include "dcscodes.h"
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								const QMap<unsigned int, unsigned int> DCSCodes::m_toCanonicalCode {
							 | 
						||
| 
								 | 
							
								    {0023, 0023},
							 | 
						||
| 
								 | 
							
								    {0340, 0023},
							 | 
						||
| 
								 | 
							
								    {0766, 0023},
							 | 
						||
| 
								 | 
							
								    {0025, 0025},
							 | 
						||
| 
								 | 
							
								    {0026, 0026},
							 | 
						||
| 
								 | 
							
								    {0566, 0026},
							 | 
						||
| 
								 | 
							
								    {0031, 0031},
							 | 
						||
| 
								 | 
							
								    {0374, 0031},
							 | 
						||
| 
								 | 
							
								    {0643, 0031},
							 | 
						||
| 
								 | 
							
								    {0032, 0032},
							 | 
						||
| 
								 | 
							
								    {0036, 0036},
							 | 
						||
| 
								 | 
							
								    {0137, 0036},
							 | 
						||
| 
								 | 
							
								    {0043, 0043},
							 | 
						||
| 
								 | 
							
								    {0355, 0043},
							 | 
						||
| 
								 | 
							
								    {0047, 0047},
							 | 
						||
| 
								 | 
							
								    {0375, 0047},
							 | 
						||
| 
								 | 
							
								    {0707, 0047},
							 | 
						||
| 
								 | 
							
								    {0051, 0051},
							 | 
						||
| 
								 | 
							
								    {0771, 0051},
							 | 
						||
| 
								 | 
							
								    {0520, 0051},
							 | 
						||
| 
								 | 
							
								    {0053, 0053},
							 | 
						||
| 
								 | 
							
								    {0054, 0054},
							 | 
						||
| 
								 | 
							
								    {0405, 0054},
							 | 
						||
| 
								 | 
							
								    {0675, 0054},
							 | 
						||
| 
								 | 
							
								    {0065, 0065},
							 | 
						||
| 
								 | 
							
								    {0301, 0065},
							 | 
						||
| 
								 | 
							
								    {0071, 0071},
							 | 
						||
| 
								 | 
							
								    {0603, 0071},
							 | 
						||
| 
								 | 
							
								    {0717, 0071},
							 | 
						||
| 
								 | 
							
								    {0746, 0071},
							 | 
						||
| 
								 | 
							
								    {0072, 0072},
							 | 
						||
| 
								 | 
							
								    {0470, 0072},
							 | 
						||
| 
								 | 
							
								    {0701, 0072},
							 | 
						||
| 
								 | 
							
								    {0073, 0073},
							 | 
						||
| 
								 | 
							
								    {0640, 0073},
							 | 
						||
| 
								 | 
							
								    {0074, 0074},
							 | 
						||
| 
								 | 
							
								    {0360, 0074},
							 | 
						||
| 
								 | 
							
								    {0721, 0074},
							 | 
						||
| 
								 | 
							
								    {0112, 0112},
							 | 
						||
| 
								 | 
							
								    {0250, 0112},
							 | 
						||
| 
								 | 
							
								    {0505, 0112},
							 | 
						||
| 
								 | 
							
								    {0512, 0112},
							 | 
						||
| 
								 | 
							
								    {0114, 0114},
							 | 
						||
| 
								 | 
							
								    {0327, 0114},
							 | 
						||
| 
								 | 
							
								    {0615, 0114},
							 | 
						||
| 
								 | 
							
								    {0115, 0115},
							 | 
						||
| 
								 | 
							
								    {0534, 0115},
							 | 
						||
| 
								 | 
							
								    {0674, 0115},
							 | 
						||
| 
								 | 
							
								    {0116, 0116},
							 | 
						||
| 
								 | 
							
								    {0060, 0116},
							 | 
						||
| 
								 | 
							
								    {0737, 0116},
							 | 
						||
| 
								 | 
							
								    {0122, 0122},
							 | 
						||
| 
								 | 
							
								    {0535, 0125},
							 | 
						||
| 
								 | 
							
								    {0125, 0125},
							 | 
						||
| 
								 | 
							
								    {0173, 0125},
							 | 
						||
| 
								 | 
							
								    {0131, 0131},
							 | 
						||
| 
								 | 
							
								    {0572, 0131},
							 | 
						||
| 
								 | 
							
								    {0702, 0131},
							 | 
						||
| 
								 | 
							
								    {0132, 0132},
							 | 
						||
| 
								 | 
							
								    {0605, 0132},
							 | 
						||
| 
								 | 
							
								    {0634, 0132},
							 | 
						||
| 
								 | 
							
								    {0714, 0132},
							 | 
						||
| 
								 | 
							
								    {0134, 0134},
							 | 
						||
| 
								 | 
							
								    {0273, 0134},
							 | 
						||
| 
								 | 
							
								    {0143, 0143},
							 | 
						||
| 
								 | 
							
								    {0333, 0143},
							 | 
						||
| 
								 | 
							
								    {0145, 0145},
							 | 
						||
| 
								 | 
							
								    {0525, 0145},
							 | 
						||
| 
								 | 
							
								    {0152, 0152},
							 | 
						||
| 
								 | 
							
								    {0366, 0152},
							 | 
						||
| 
								 | 
							
								    {0415, 0152},
							 | 
						||
| 
								 | 
							
								    {0155, 0155},
							 | 
						||
| 
								 | 
							
								    {0233, 0155},
							 | 
						||
| 
								 | 
							
								    {0660, 0155},
							 | 
						||
| 
								 | 
							
								    {0156, 0156},
							 | 
						||
| 
								 | 
							
								    {0517, 0156},
							 | 
						||
| 
								 | 
							
								    {0741, 0156},
							 | 
						||
| 
								 | 
							
								    {0162, 0162},
							 | 
						||
| 
								 | 
							
								    {0416, 0162},
							 | 
						||
| 
								 | 
							
								    {0553, 0162},
							 | 
						||
| 
								 | 
							
								    {0165, 0165},
							 | 
						||
| 
								 | 
							
								    {0354, 0165},
							 | 
						||
| 
								 | 
							
								    {0172, 0172},
							 | 
						||
| 
								 | 
							
								    {0057, 0172},
							 | 
						||
| 
								 | 
							
								    {0174, 0174},
							 | 
						||
| 
								 | 
							
								    {0142, 0174},
							 | 
						||
| 
								 | 
							
								    {0270, 0174},
							 | 
						||
| 
								 | 
							
								    {0205, 0205},
							 | 
						||
| 
								 | 
							
								    {0135, 0205},
							 | 
						||
| 
								 | 
							
								    {0610, 0205},
							 | 
						||
| 
								 | 
							
								    {0212, 0212},
							 | 
						||
| 
								 | 
							
								    {0253, 0212},
							 | 
						||
| 
								 | 
							
								    {0223, 0223},
							 | 
						||
| 
								 | 
							
								    {0350, 0223},
							 | 
						||
| 
								 | 
							
								    {0475, 0223},
							 | 
						||
| 
								 | 
							
								    {0750, 0223},
							 | 
						||
| 
								 | 
							
								    {0225, 0225},
							 | 
						||
| 
								 | 
							
								    {0536, 0225},
							 | 
						||
| 
								 | 
							
								    {0226, 0226},
							 | 
						||
| 
								 | 
							
								    {0104, 0226},
							 | 
						||
| 
								 | 
							
								    {0557, 0226},
							 | 
						||
| 
								 | 
							
								    {0243, 0243},
							 | 
						||
| 
								 | 
							
								    {0267, 0243},
							 | 
						||
| 
								 | 
							
								    {0342, 0243},
							 | 
						||
| 
								 | 
							
								    {0244, 0244},
							 | 
						||
| 
								 | 
							
								    {0176, 0244},
							 | 
						||
| 
								 | 
							
								    {0417, 0244},
							 | 
						||
| 
								 | 
							
								    {0245, 0245},
							 | 
						||
| 
								 | 
							
								    {0370, 0245},
							 | 
						||
| 
								 | 
							
								    {0246, 0246},
							 | 
						||
| 
								 | 
							
								    {0542, 0246},
							 | 
						||
| 
								 | 
							
								    {0653, 0246},
							 | 
						||
| 
								 | 
							
								    {0554, 0245},
							 | 
						||
| 
								 | 
							
								    {0251, 0251},
							 | 
						||
| 
								 | 
							
								    {0236, 0251},
							 | 
						||
| 
								 | 
							
								    {0704, 0251},
							 | 
						||
| 
								 | 
							
								    {0742, 0251},
							 | 
						||
| 
								 | 
							
								    {0252, 0252},
							 | 
						||
| 
								 | 
							
								    {0661, 0252},
							 | 
						||
| 
								 | 
							
								    {0255, 0255},
							 | 
						||
| 
								 | 
							
								    {0425, 0255},
							 | 
						||
| 
								 | 
							
								    {0261, 0261},
							 | 
						||
| 
								 | 
							
								    {0227, 0261},
							 | 
						||
| 
								 | 
							
								    {0567, 0261},
							 | 
						||
| 
								 | 
							
								    {0263, 0263},
							 | 
						||
| 
								 | 
							
								    {0213, 0263},
							 | 
						||
| 
								 | 
							
								    {0736, 0263},
							 | 
						||
| 
								 | 
							
								    {0265, 0265},
							 | 
						||
| 
								 | 
							
								    {0171, 0265},
							 | 
						||
| 
								 | 
							
								    {0426, 0265},
							 | 
						||
| 
								 | 
							
								    {0266, 0266},
							 | 
						||
| 
								 | 
							
								    {0655, 0266},
							 | 
						||
| 
								 | 
							
								    {0271, 0271},
							 | 
						||
| 
								 | 
							
								    {0427, 0271},
							 | 
						||
| 
								 | 
							
								    {0510, 0271},
							 | 
						||
| 
								 | 
							
								    {0762, 0271},
							 | 
						||
| 
								 | 
							
								    {0274, 0274},
							 | 
						||
| 
								 | 
							
								    {0652, 0274},
							 | 
						||
| 
								 | 
							
								    {0306, 0306},
							 | 
						||
| 
								 | 
							
								    {0147, 0306},
							 | 
						||
| 
								 | 
							
								    {0303, 0306},
							 | 
						||
| 
								 | 
							
								    {0761, 0306},
							 | 
						||
| 
								 | 
							
								    {0311, 0311},
							 | 
						||
| 
								 | 
							
								    {0330, 0311},
							 | 
						||
| 
								 | 
							
								    {0456, 0311},
							 | 
						||
| 
								 | 
							
								    {0561, 0311},
							 | 
						||
| 
								 | 
							
								    {0315, 0315},
							 | 
						||
| 
								 | 
							
								    {0321, 0315},
							 | 
						||
| 
								 | 
							
								    {0673, 0315},
							 | 
						||
| 
								 | 
							
								    {0325, 0325},
							 | 
						||
| 
								 | 
							
								    {0550, 0325},
							 | 
						||
| 
								 | 
							
								    {0626, 0325},
							 | 
						||
| 
								 | 
							
								    {0331, 0331},
							 | 
						||
| 
								 | 
							
								    {0372, 0331},
							 | 
						||
| 
								 | 
							
								    {0507, 0331},
							 | 
						||
| 
								 | 
							
								    {0332, 0332},
							 | 
						||
| 
								 | 
							
								    {0433, 0332},
							 | 
						||
| 
								 | 
							
								    {0552, 0332},
							 | 
						||
| 
								 | 
							
								    {0343, 0343},
							 | 
						||
| 
								 | 
							
								    {0324, 0343},
							 | 
						||
| 
								 | 
							
								    {0570, 0343},
							 | 
						||
| 
								 | 
							
								    {0346, 0346},
							 | 
						||
| 
								 | 
							
								    {0616, 0346},
							 | 
						||
| 
								 | 
							
								    {0635, 0346},
							 | 
						||
| 
								 | 
							
								    {0724, 0346},
							 | 
						||
| 
								 | 
							
								    {0351, 0351},
							 | 
						||
| 
								 | 
							
								    {0353, 0351},
							 | 
						||
| 
								 | 
							
								    {0435, 0351},
							 | 
						||
| 
								 | 
							
								    {0356, 0356},
							 | 
						||
| 
								 | 
							
								    {0521, 0356},
							 | 
						||
| 
								 | 
							
								    {0364, 0364},
							 | 
						||
| 
								 | 
							
								    {0130, 0364},
							 | 
						||
| 
								 | 
							
								    {0641, 0364},
							 | 
						||
| 
								 | 
							
								    {0365, 0365},
							 | 
						||
| 
								 | 
							
								    {0107, 0365},
							 | 
						||
| 
								 | 
							
								    {0371, 0371},
							 | 
						||
| 
								 | 
							
								    {0217, 0371},
							 | 
						||
| 
								 | 
							
								    {0453, 0371},
							 | 
						||
| 
								 | 
							
								    {0530, 0371},
							 | 
						||
| 
								 | 
							
								    {0411, 0411},
							 | 
						||
| 
								 | 
							
								    {0117, 0411},
							 | 
						||
| 
								 | 
							
								    {0756, 0411},
							 | 
						||
| 
								 | 
							
								    {0412, 0412},
							 | 
						||
| 
								 | 
							
								    {0127, 0412},
							 | 
						||
| 
								 | 
							
								    {0441, 0412},
							 | 
						||
| 
								 | 
							
								    {0711, 0412},
							 | 
						||
| 
								 | 
							
								    {0413, 0413},
							 | 
						||
| 
								 | 
							
								    {0133, 0413},
							 | 
						||
| 
								 | 
							
								    {0620, 0413},
							 | 
						||
| 
								 | 
							
								    {0423, 0423},
							 | 
						||
| 
								 | 
							
								    {0234, 0423},
							 | 
						||
| 
								 | 
							
								    {0563, 0423},
							 | 
						||
| 
								 | 
							
								    {0621, 0423},
							 | 
						||
| 
								 | 
							
								    {0713, 0423},
							 | 
						||
| 
								 | 
							
								    {0431, 0431},
							 | 
						||
| 
								 | 
							
								    {0262, 0431},
							 | 
						||
| 
								 | 
							
								    {0316, 0431},
							 | 
						||
| 
								 | 
							
								    {0730, 0431},
							 | 
						||
| 
								 | 
							
								    {0432, 0432},
							 | 
						||
| 
								 | 
							
								    {0432, 0432},
							 | 
						||
| 
								 | 
							
								    {0276, 0432},
							 | 
						||
| 
								 | 
							
								    {0326, 0432},
							 | 
						||
| 
								 | 
							
								    {0445, 0445},
							 | 
						||
| 
								 | 
							
								    {0222, 0445},
							 | 
						||
| 
								 | 
							
								    {0457, 0445},
							 | 
						||
| 
								 | 
							
								    {0575, 0445},
							 | 
						||
| 
								 | 
							
								    {0446, 0446},
							 | 
						||
| 
								 | 
							
								    {0467, 0446},
							 | 
						||
| 
								 | 
							
								    {0511, 0446},
							 | 
						||
| 
								 | 
							
								    {0672, 0446},
							 | 
						||
| 
								 | 
							
								    {0452, 0452},
							 | 
						||
| 
								 | 
							
								    {0524, 0452},
							 | 
						||
| 
								 | 
							
								    {0765, 0452},
							 | 
						||
| 
								 | 
							
								    {0454, 0454},
							 | 
						||
| 
								 | 
							
								    {0545, 0454},
							 | 
						||
| 
								 | 
							
								    {0513, 0454},
							 | 
						||
| 
								 | 
							
								    {0564, 0454},
							 | 
						||
| 
								 | 
							
								    {0455, 0455},
							 | 
						||
| 
								 | 
							
								    {0533, 0455},
							 | 
						||
| 
								 | 
							
								    {0551, 0455},
							 | 
						||
| 
								 | 
							
								    {0462, 0462},
							 | 
						||
| 
								 | 
							
								    {0462, 0462},
							 | 
						||
| 
								 | 
							
								    {0472, 0462},
							 | 
						||
| 
								 | 
							
								    {0623, 0462},
							 | 
						||
| 
								 | 
							
								    {0725, 0462},
							 | 
						||
| 
								 | 
							
								    {0464, 0464},
							 | 
						||
| 
								 | 
							
								    {0237, 0464},
							 | 
						||
| 
								 | 
							
								    {0642, 0464},
							 | 
						||
| 
								 | 
							
								    {0772, 0464},
							 | 
						||
| 
								 | 
							
								    {0465, 0465},
							 | 
						||
| 
								 | 
							
								    {0056, 0465},
							 | 
						||
| 
								 | 
							
								    {0656, 0465},
							 | 
						||
| 
								 | 
							
								    {0466, 0466},
							 | 
						||
| 
								 | 
							
								    {0144, 0466},
							 | 
						||
| 
								 | 
							
								    {0666, 0466},
							 | 
						||
| 
								 | 
							
								    {0503, 0503},
							 | 
						||
| 
								 | 
							
								    {0157, 0503},
							 | 
						||
| 
								 | 
							
								    {0322, 0503},
							 | 
						||
| 
								 | 
							
								    {0506, 0506},
							 | 
						||
| 
								 | 
							
								    {0224, 0506},
							 | 
						||
| 
								 | 
							
								    {0313, 0506},
							 | 
						||
| 
								 | 
							
								    {0574, 0506},
							 | 
						||
| 
								 | 
							
								    {0516, 0516},
							 | 
						||
| 
								 | 
							
								    {0067, 0516},
							 | 
						||
| 
								 | 
							
								    {0720, 0516},
							 | 
						||
| 
								 | 
							
								    {0523, 0523},
							 | 
						||
| 
								 | 
							
								    {0647, 0523},
							 | 
						||
| 
								 | 
							
								    {0726, 0523},
							 | 
						||
| 
								 | 
							
								    {0526, 0526},
							 | 
						||
| 
								 | 
							
								    {0562, 0526},
							 | 
						||
| 
								 | 
							
								    {0645, 0526},
							 | 
						||
| 
								 | 
							
								    {0532, 0532},
							 | 
						||
| 
								 | 
							
								    {0161, 0532},
							 | 
						||
| 
								 | 
							
								    {0345, 0532},
							 | 
						||
| 
								 | 
							
								    {0546, 0546},
							 | 
						||
| 
								 | 
							
								    {0317, 0546},
							 | 
						||
| 
								 | 
							
								    {0614, 0546},
							 | 
						||
| 
								 | 
							
								    {0751, 0546},
							 | 
						||
| 
								 | 
							
								    {0565, 0565},
							 | 
						||
| 
								 | 
							
								    {0307, 0565},
							 | 
						||
| 
								 | 
							
								    {0362, 0565},
							 | 
						||
| 
								 | 
							
								    {0606, 0606},
							 | 
						||
| 
								 | 
							
								    {0153, 0606},
							 | 
						||
| 
								 | 
							
								    {0630, 0606},
							 | 
						||
| 
								 | 
							
								    {0612, 0612},
							 | 
						||
| 
								 | 
							
								    {0254, 0612},
							 | 
						||
| 
								 | 
							
								    {0314, 0612},
							 | 
						||
| 
								 | 
							
								    {0706, 0612},
							 | 
						||
| 
								 | 
							
								    {0624, 0624},
							 | 
						||
| 
								 | 
							
								    {0075, 0624},
							 | 
						||
| 
								 | 
							
								    {0501, 0624},
							 | 
						||
| 
								 | 
							
								    {0627, 0627},
							 | 
						||
| 
								 | 
							
								    {0037, 0627},
							 | 
						||
| 
								 | 
							
								    {0560, 0627},
							 | 
						||
| 
								 | 
							
								    {0631, 0631},
							 | 
						||
| 
								 | 
							
								    {0231, 0631},
							 | 
						||
| 
								 | 
							
								    {0504, 0631},
							 | 
						||
| 
								 | 
							
								    {0636, 0631},
							 | 
						||
| 
								 | 
							
								    {0745, 0631},
							 | 
						||
| 
								 | 
							
								    {0632, 0632},
							 | 
						||
| 
								 | 
							
								    {0123, 0632},
							 | 
						||
| 
								 | 
							
								    {0657, 0632},
							 | 
						||
| 
								 | 
							
								    {0654, 0654},
							 | 
						||
| 
								 | 
							
								    {0163, 0654},
							 | 
						||
| 
								 | 
							
								    {0460, 0654},
							 | 
						||
| 
								 | 
							
								    {0607, 0654},
							 | 
						||
| 
								 | 
							
								    {0662, 0662},
							 | 
						||
| 
								 | 
							
								    {0363, 0662},
							 | 
						||
| 
								 | 
							
								    {0436, 0662},
							 | 
						||
| 
								 | 
							
								    {0443, 0662},
							 | 
						||
| 
								 | 
							
								    {0444, 0662},
							 | 
						||
| 
								 | 
							
								    {0664, 0664},
							 | 
						||
| 
								 | 
							
								    {0344, 0664},
							 | 
						||
| 
								 | 
							
								    {0471, 0664},
							 | 
						||
| 
								 | 
							
								    {0715, 0664},
							 | 
						||
| 
								 | 
							
								    {0703, 0703},
							 | 
						||
| 
								 | 
							
								    {0150, 0703},
							 | 
						||
| 
								 | 
							
								    {0256, 0703},
							 | 
						||
| 
								 | 
							
								    {0712, 0712},
							 | 
						||
| 
								 | 
							
								    {0136, 0712},
							 | 
						||
| 
								 | 
							
								    {0502, 0712},
							 | 
						||
| 
								 | 
							
								    {0723, 0723},
							 | 
						||
| 
								 | 
							
								    {0235, 0723},
							 | 
						||
| 
								 | 
							
								    {0671, 0723},
							 | 
						||
| 
								 | 
							
								    {0611, 0723},
							 | 
						||
| 
								 | 
							
								    {0731, 0731},
							 | 
						||
| 
								 | 
							
								    {0447, 0731},
							 | 
						||
| 
								 | 
							
								    {0473, 0731},
							 | 
						||
| 
								 | 
							
								    {0474, 0731},
							 | 
						||
| 
								 | 
							
								    {0744, 0731},
							 | 
						||
| 
								 | 
							
								    {0732, 0732},
							 | 
						||
| 
								 | 
							
								    {0164, 0732},
							 | 
						||
| 
								 | 
							
								    {0207, 0732},
							 | 
						||
| 
								 | 
							
								    {0734, 0734},
							 | 
						||
| 
								 | 
							
								    {0066, 0734},
							 | 
						||
| 
								 | 
							
								    {0743, 0743},
							 | 
						||
| 
								 | 
							
								    {0312, 0743},
							 | 
						||
| 
								 | 
							
								    {0515, 0743},
							 | 
						||
| 
								 | 
							
								    {0663, 0743},
							 | 
						||
| 
								 | 
							
								    {0754, 0754},
							 | 
						||
| 
								 | 
							
								    {0076, 0754},
							 | 
						||
| 
								 | 
							
								    {0203, 0754},
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								const QMap<unsigned int, unsigned int> DCSCodes::m_signFlip = {
							 | 
						||
| 
								 | 
							
								    {0023, 0047},
							 | 
						||
| 
								 | 
							
								    {0025, 0244},
							 | 
						||
| 
								 | 
							
								    {0026, 0464},
							 | 
						||
| 
								 | 
							
								    {0031, 0627},
							 | 
						||
| 
								 | 
							
								    {0032, 0051},
							 | 
						||
| 
								 | 
							
								    {0043, 0445},
							 | 
						||
| 
								 | 
							
								    {0047, 0023},
							 | 
						||
| 
								 | 
							
								    {0051, 0032},
							 | 
						||
| 
								 | 
							
								    {0053, 0452},
							 | 
						||
| 
								 | 
							
								    {0054, 0413},
							 | 
						||
| 
								 | 
							
								    {0065, 0271},
							 | 
						||
| 
								 | 
							
								    {0071, 0306},
							 | 
						||
| 
								 | 
							
								    {0072, 0245},
							 | 
						||
| 
								 | 
							
								    {0073, 0506},
							 | 
						||
| 
								 | 
							
								    {0074, 0174},
							 | 
						||
| 
								 | 
							
								    {0114, 0712},
							 | 
						||
| 
								 | 
							
								    {0115, 0152},
							 | 
						||
| 
								 | 
							
								    {0116, 0754},
							 | 
						||
| 
								 | 
							
								    {0122, 0225},
							 | 
						||
| 
								 | 
							
								    {0125, 0365},
							 | 
						||
| 
								 | 
							
								    {0131, 0364},
							 | 
						||
| 
								 | 
							
								    {0132, 0546},
							 | 
						||
| 
								 | 
							
								    {0134, 0223},
							 | 
						||
| 
								 | 
							
								    {0143, 0412},
							 | 
						||
| 
								 | 
							
								    {0145, 0274},
							 | 
						||
| 
								 | 
							
								    {0152, 0115},
							 | 
						||
| 
								 | 
							
								    {0155, 0731},
							 | 
						||
| 
								 | 
							
								    {0156, 0265},
							 | 
						||
| 
								 | 
							
								    {0162, 0503},
							 | 
						||
| 
								 | 
							
								    {0165, 0251},
							 | 
						||
| 
								 | 
							
								    {0172, 0036},
							 | 
						||
| 
								 | 
							
								    {0174, 0074},
							 | 
						||
| 
								 | 
							
								    {0205, 0263},
							 | 
						||
| 
								 | 
							
								    {0212, 0356},
							 | 
						||
| 
								 | 
							
								    {0223, 0134},
							 | 
						||
| 
								 | 
							
								    {0225, 0122},
							 | 
						||
| 
								 | 
							
								    {0226, 0411},
							 | 
						||
| 
								 | 
							
								    {0243, 0351},
							 | 
						||
| 
								 | 
							
								    {0244, 0025},
							 | 
						||
| 
								 | 
							
								    {0245, 0072},
							 | 
						||
| 
								 | 
							
								    {0246, 0523},
							 | 
						||
| 
								 | 
							
								    {0251, 0165},
							 | 
						||
| 
								 | 
							
								    {0252, 0462},
							 | 
						||
| 
								 | 
							
								    {0255, 0511},
							 | 
						||
| 
								 | 
							
								    {0261, 0732},
							 | 
						||
| 
								 | 
							
								    {0263, 0205},
							 | 
						||
| 
								 | 
							
								    {0265, 0156},
							 | 
						||
| 
								 | 
							
								    {0266, 0454},
							 | 
						||
| 
								 | 
							
								    {0271, 0065},
							 | 
						||
| 
								 | 
							
								    {0274, 0145},
							 | 
						||
| 
								 | 
							
								    {0306, 0071},
							 | 
						||
| 
								 | 
							
								    {0311, 0664},
							 | 
						||
| 
								 | 
							
								    {0315, 0423},
							 | 
						||
| 
								 | 
							
								    {0325, 0526},
							 | 
						||
| 
								 | 
							
								    {0331, 0465},
							 | 
						||
| 
								 | 
							
								    {0332, 0455},
							 | 
						||
| 
								 | 
							
								    {0343, 0532},
							 | 
						||
| 
								 | 
							
								    {0346, 0612},
							 | 
						||
| 
								 | 
							
								    {0351, 0243},
							 | 
						||
| 
								 | 
							
								    {0356, 0212},
							 | 
						||
| 
								 | 
							
								    {0364, 0131},
							 | 
						||
| 
								 | 
							
								    {0365, 0125},
							 | 
						||
| 
								 | 
							
								    {0371, 0734},
							 | 
						||
| 
								 | 
							
								    {0411, 0226},
							 | 
						||
| 
								 | 
							
								    {0412, 0143},
							 | 
						||
| 
								 | 
							
								    {0413, 0054},
							 | 
						||
| 
								 | 
							
								    {0423, 0315},
							 | 
						||
| 
								 | 
							
								    {0431, 0723},
							 | 
						||
| 
								 | 
							
								    {0432, 0516},
							 | 
						||
| 
								 | 
							
								    {0445, 0043},
							 | 
						||
| 
								 | 
							
								    {0446, 0255},
							 | 
						||
| 
								 | 
							
								    {0452, 0053},
							 | 
						||
| 
								 | 
							
								    {0454, 0655},
							 | 
						||
| 
								 | 
							
								    {0455, 0332},
							 | 
						||
| 
								 | 
							
								    {0462, 0252},
							 | 
						||
| 
								 | 
							
								    {0464, 0026},
							 | 
						||
| 
								 | 
							
								    {0465, 0331},
							 | 
						||
| 
								 | 
							
								    {0466, 0662},
							 | 
						||
| 
								 | 
							
								    {0503, 0162},
							 | 
						||
| 
								 | 
							
								    {0506, 0073},
							 | 
						||
| 
								 | 
							
								    {0516, 0432},
							 | 
						||
| 
								 | 
							
								    {0523, 0246},
							 | 
						||
| 
								 | 
							
								    {0526, 0325},
							 | 
						||
| 
								 | 
							
								    {0532, 0343},
							 | 
						||
| 
								 | 
							
								    {0546, 0132},
							 | 
						||
| 
								 | 
							
								    {0565, 0703},
							 | 
						||
| 
								 | 
							
								    {0606, 0631},
							 | 
						||
| 
								 | 
							
								    {0612, 0346},
							 | 
						||
| 
								 | 
							
								    {0624, 0632},
							 | 
						||
| 
								 | 
							
								    {0627, 0031},
							 | 
						||
| 
								 | 
							
								    {0631, 0606},
							 | 
						||
| 
								 | 
							
								    {0632, 0624},
							 | 
						||
| 
								 | 
							
								    {0654, 0743},
							 | 
						||
| 
								 | 
							
								    {0662, 0466},
							 | 
						||
| 
								 | 
							
								    {0664, 0311},
							 | 
						||
| 
								 | 
							
								    {0703, 0565},
							 | 
						||
| 
								 | 
							
								    {0712, 0114},
							 | 
						||
| 
								 | 
							
								    {0723, 0431},
							 | 
						||
| 
								 | 
							
								    {0731, 0155},
							 | 
						||
| 
								 | 
							
								    {0732, 0261},
							 | 
						||
| 
								 | 
							
								    {0734, 0371},
							 | 
						||
| 
								 | 
							
								    {0743, 0654},
							 | 
						||
| 
								 | 
							
								    {0754, 0116},
							 | 
						||
| 
								 | 
							
								};
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								void DCSCodes::getCanonicalCodes(QList<unsigned int>& codes)
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
								    codes.clear();
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								    for (auto code : m_toCanonicalCode.keys())
							 | 
						||
| 
								 | 
							
								    {
							 | 
						||
| 
								 | 
							
								        if (code == m_toCanonicalCode.value(code)) {
							 | 
						||
| 
								 | 
							
								            codes.append(code);
							 | 
						||
| 
								 | 
							
								        }
							 | 
						||
| 
								 | 
							
								    }
							 | 
						||
| 
								 | 
							
								}
							 |