LCOV - code coverage report
Current view: top level - src/importexport/guitarpro/internal/gtp - gpdrumsetresolver.cpp Coverage Total Hit
Test: filtered_coverage.info Lines: 93.4 % 136 127
Test Date: 2026-11-05 04:07:02

            Line data    Source code
       1              : #include "gpdrumsetresolver.h"
       2              : 
       3              : #include "log.h"
       4              : 
       5              : namespace mu::iex::guitarpro {
       6          221 : void GPDrumSetResolver::initGPDrum()
       7              : {
       8          221 :     addDrum(GPDrum(35, 0, 0));
       9          221 :     addDrum(GPDrum(36, 0, 0));
      10          221 :     addDrum(GPDrum(36, 6, 1));
      11          221 :     addDrum(GPDrum(37, 1, 2));
      12          221 :     addDrum(GPDrum(38, 1, 0));
      13          221 :     addDrum(GPDrum(42, 10, 0));
      14          221 :     addDrum(GPDrum(43, 5, 0));
      15          221 :     addDrum(GPDrum(44, 11, 0));
      16          221 :     addDrum(GPDrum(45, 6, 0));
      17          221 :     addDrum(GPDrum(46, 10, 2));
      18          221 :     addDrum(GPDrum(47, 7, 0));
      19          221 :     addDrum(GPDrum(48, 8, 0));
      20          221 :     addDrum(GPDrum(49, 13, 0));
      21          221 :     addDrum(GPDrum(50, 9, 0));
      22          221 :     addDrum(GPDrum(51, 15, 0));
      23          221 :     addDrum(GPDrum(52, 16, 0));
      24          221 :     addDrum(GPDrum(53, 15, 2));
      25          221 :     addDrum(GPDrum(55, 14, 0));
      26          221 :     addDrum(GPDrum(56, 3, 0));
      27          221 :     addDrum(GPDrum(57, 12, 0));
      28          221 :     addDrum(GPDrum(91, 1, 1));
      29          221 :     addDrum(GPDrum(92, 10, 1));
      30          221 :     addDrum(GPDrum(93, 15, 1));
      31          221 :     addDrum(GPDrum(99, 2, 0));
      32          221 :     addDrum(GPDrum(102, 4, 0));
      33              : 
      34          221 :     addDrum(GPDrum(0, 0, 0,  u"rvs-cymb"));
      35              : 
      36          221 :     addDrum(GPDrum(37, 0, 0,  u"snr"));
      37          221 :     addDrum(GPDrum(38, 1, 0,  u"snr"));
      38              : 
      39          221 :     addDrum(GPDrum(39, 0, 0,  u"hclap"));
      40              : 
      41          221 :     addDrum(GPDrum(87, 2, 1,  u"latinoKit"));
      42          221 :     addDrum(GPDrum(54, 3, 0,  u"latinoKit"));
      43          221 :     addDrum(GPDrum(54, 3, 1,  u"latinoKit"));
      44          221 :     addDrum(GPDrum(112, 3, 3, u"latinoKit"));
      45              : 
      46          221 :     addDrum(GPDrum(58, 0, 0,  u"vbrslp"));
      47              : 
      48          221 :     addDrum(GPDrum(67, 0, 0,  u"agogoKit"));
      49          221 :     addDrum(GPDrum(68, 1, 0,  u"agogoKit"));
      50              : 
      51          221 :     addDrum(GPDrum(63, 4, 0,  u"africaKit"));
      52          221 :     addDrum(GPDrum(73, 2, 0,  u"africaKit"));
      53          221 :     addDrum(GPDrum(74, 2, 2,  u"africaKit"));
      54          221 :     addDrum(GPDrum(109, 3, 2, u"africaKit"));
      55          221 :     addDrum(GPDrum(110, 4, 1, u"africaKit"));
      56              : 
      57          221 :     addDrum(GPDrum(62, 1, 2,  u"cngKit"));
      58          221 :     addDrum(GPDrum(63, 1, 0,  u"cngKit"));
      59          221 :     addDrum(GPDrum(64, 0, 0,  u"cngKit"));
      60              : 
      61          221 :     addDrum(GPDrum(65, 0, 0,  u"snthdrm"));
      62              : 
      63          221 :     addDrum(GPDrum(65, 1, 0,  u"tmblKit"));
      64          221 :     addDrum(GPDrum(66, 0, 0,  u"tmblKit"));
      65              : 
      66          221 :     addDrum(GPDrum(65, 0, 0,  u"mldctm"));
      67              : 
      68          221 :     addDrum(GPDrum(66, 0, 0,  u"taiko"));
      69              : 
      70          221 :     addDrum(GPDrum(69, 0, 0,  u"cbs"));
      71          221 :     addDrum(GPDrum(69, 0, 1,  u"cbs"));
      72          221 :     addDrum(GPDrum(117, 0, 2, u"cbs"));
      73              : 
      74          221 :     addDrum(GPDrum(70, 0, 0,  u"mrcs"));
      75              : 
      76          221 :     addDrum(GPDrum(71, 0, 0,  u"whstlKit"));
      77          221 :     addDrum(GPDrum(72, 1, 0,  u"whstlKit"));
      78              : 
      79          221 :     addDrum(GPDrum(73, 0, 0,  u"guiro"));
      80          221 :     addDrum(GPDrum(73, 0, 1,  u"guiro"));
      81          221 :     addDrum(GPDrum(74, 0, 2,  u"guiro"));
      82              : 
      83          221 :     addDrum(GPDrum(75, 0, 0,  u"clvs"));
      84          221 :     addDrum(GPDrum(75, 5, 0,  u"clvs"));
      85              : 
      86          221 :     addDrum(GPDrum(76, 0, 0,  u"wdblckKit"));
      87          221 :     addDrum(GPDrum(77, 1, 0,  u"wdblckKit"));
      88              : 
      89          221 :     addDrum(GPDrum(78, 0, 0,  u"cuicaKit"));
      90          221 :     addDrum(GPDrum(79, 1, 0,  u"cuicaKit"));
      91              : 
      92          221 :     addDrum(GPDrum(80, 0, 1,  u"trngl"));
      93          221 :     addDrum(GPDrum(81, 0, 0,  u"trngl"));
      94              : 
      95          221 :     addDrum(GPDrum(82, 0, 0,  u"shkr"));
      96          221 :     addDrum(GPDrum(82, 0, 1,  u"shkr"));
      97              : 
      98          221 :     addDrum(GPDrum(83, 0, 0,  u"jngl-bell"));
      99              : 
     100          221 :     addDrum(GPDrum(84, 0, 0,  u"bell-tree"));
     101          221 :     addDrum(GPDrum(123, 0, 2, u"bell-tree"));
     102              : 
     103          221 :     addDrum(GPDrum(85, 0, 0,  u"cstnt"));
     104              : 
     105          221 :     addDrum(GPDrum(86, 0, 1,  u"surdo"));
     106          221 :     addDrum(GPDrum(86, 0, 0,  u"surdo"));
     107              : 
     108          221 :     addDrum(GPDrum(102, 0, 0,  u"cowbell"));
     109              : 
     110          221 :     addDrum(GPDrum(51, 0, 0,  u"sambaKit"));
     111          221 :     addDrum(GPDrum(93, 0, 1,  u"sambaKit"));
     112          221 :     addDrum(GPDrum(53, 0, 2,  u"sambaKit"));
     113          221 :     addDrum(GPDrum(102, 1, 0, u"sambaKit"));
     114          221 :     addDrum(GPDrum(56, 2, 0,  u"sambaKit"));
     115          221 :     addDrum(GPDrum(99, 3, 0,  u"sambaKit"));
     116          221 :     addDrum(GPDrum(99, 3, 0,  u"sambaKit"));
     117          221 :     addDrum(GPDrum(77, 4, 0,  u"sambaKit"));
     118          221 :     addDrum(GPDrum(76, 5, 0,  u"sambaKit"));
     119          221 :     addDrum(GPDrum(66, 6, 0,  u"sambaKit"));
     120          221 :     addDrum(GPDrum(65, 7, 0,  u"sambaKit"));
     121              : 
     122          221 :     addDrum(GPDrum(61, 0, 0,   u"bngKit"));
     123          221 :     addDrum(GPDrum(106, 0, 2,  u"bngKit"));
     124          221 :     addDrum(GPDrum(107, 0, 1,  u"bngKit"));
     125          221 :     addDrum(GPDrum(60, 1, 0,   u"bngKit"));
     126          221 :     addDrum(GPDrum(104, 1, 2,  u"bngKit"));
     127          221 :     addDrum(GPDrum(105, 1, 1,  u"bngKit"));
     128          221 :     addDrum(GPDrum(108, 2, 1,  u"bngKit"));
     129          221 :     addDrum(GPDrum(64, 2, 0,   u"bngKit"));
     130          221 :     addDrum(GPDrum(109, 2, 2,  u"bngKit"));
     131          221 :     addDrum(GPDrum(63, 3, 0,   u"bngKit"));
     132          221 :     addDrum(GPDrum(110, 3, 1,  u"bngKit"));
     133          221 :     addDrum(GPDrum(62, 3, 2,   u"bngKit"));
     134              : 
     135          221 :     addDrum(GPDrum(61, 0, 0,   u"conbon"));
     136          221 :     addDrum(GPDrum(106, 0, 2,  u"conbon"));
     137          221 :     addDrum(GPDrum(107, 0, 1,  u"conbon"));
     138          221 :     addDrum(GPDrum(60, 1, 0,   u"conbon"));
     139          221 :     addDrum(GPDrum(104, 1, 2,  u"conbon"));
     140          221 :     addDrum(GPDrum(105, 1, 1,  u"conbon"));
     141          221 :     addDrum(GPDrum(108, 2, 1,  u"conbon"));
     142          221 :     addDrum(GPDrum(64, 2, 0,   u"conbon"));
     143          221 :     addDrum(GPDrum(109, 2, 2,  u"conbon"));
     144          221 :     addDrum(GPDrum(63, 3, 0,   u"conbon"));
     145          221 :     addDrum(GPDrum(110, 3, 1,  u"conbon"));
     146          221 :     addDrum(GPDrum(62, 3, 2,   u"conbon"));
     147              : 
     148          221 :     addDrum(GPDrum(108, 0, 1,  u"cngKit"));
     149          221 :     addDrum(GPDrum(109, 0, 2,  u"cngKit"));
     150          221 :     addDrum(GPDrum(110, 1, 1,  u"cngKit"));
     151          221 :     addDrum(GPDrum(111, 0, 2,  u"tmbrn"));
     152          221 :     addDrum(GPDrum(112, 0, 3,  u"tmbrn"));
     153              : 
     154          221 :     addDrum(GPDrum(113, 0, 4,  u"tmbrn"));
     155          221 :     addDrum(GPDrum(54, 0, 0,   u"tmbrn"));
     156              : 
     157          221 :     addDrum(GPDrum(114, 0, 0,  u"ptt"));
     158          221 :     addDrum(GPDrum(115, 0, 0,  u"grcss"));
     159          221 :     addDrum(GPDrum(118, 0, 2,  u"mrcs"));
     160              : 
     161          221 :     addDrum(GPDrum(119, 0, 0,  u"2Mrcs"));
     162          221 :     addDrum(GPDrum(122, 0, 2,  u"shkr"));
     163          221 : }
     164              : 
     165            0 : int32_t GPDrumSetResolver::pitch(int32_t element,
     166              :                                  int32_t variation,
     167              :                                  const muse::String& name) const
     168              : {
     169            0 :     if (_drum.find(name) == _drum.end()) {
     170            0 :         return 0;
     171              :     }
     172              : 
     173            0 :     for (const auto& drum : _drum.at(name)) {
     174            0 :         if (drum._name.contains(name)) {
     175            0 :             if (drum.element == element && drum.variation == variation) {
     176            0 :                 return drum.pitch;
     177              :             }
     178              :         }
     179              :     }
     180              : 
     181            0 :     LOGD() << "Absent drum " << "element: " << element << " variation: " << variation << " name: " << name << " key: " << 0;
     182              : 
     183            0 :     return 0;
     184              : }
     185              : 
     186        26962 : void GPDrumSetResolver::addDrum(const GPDrum& drum)
     187              : {
     188        26962 :     _drum[drum._name].push_back(drum);
     189        26962 : }
     190              : } // namespace mu::iex::guitarpro
        

Generated by: LCOV version 2.0-1