/[svn]/linuxsampler/trunk/src/engines/EngineBase.h
ViewVC logotype

Diff of /linuxsampler/trunk/src/engines/EngineBase.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 3689 by schoenebeck, Thu Jan 2 23:47:42 2020 UTC revision 3690 by schoenebeck, Fri Jan 3 10:18:21 2020 UTC
# Line 1504  namespace LinuxSampler { Line 1504  namespace LinuxSampler {
1504                              itControlChangeEvent->Param.RPN.Parameter = param;                              itControlChangeEvent->Param.RPN.Parameter = param;
1505                              itControlChangeEvent->Param.RPN.Value = value;                              itControlChangeEvent->Param.RPN.Value = value;
1506    
1507                              // do the actual RPN event processing                              // if there's a RPN script handler, run it ...
1508                                if (pChannel->pScript->handlerRpn) {
1509                                    const event_id_t eventID =
1510                                        pEventPool->getID(itControlChangeEvent);
1511                                    // run the RPN script handler
1512                                    ProcessEventByScript(
1513                                        pChannel, itControlChangeEvent,
1514                                        pChannel->pScript->handlerRpn
1515                                    );
1516                                    // if RPN event was dropped by script, abort
1517                                    // here to avoid hard coded RPN processing below
1518                                    if (!pEventPool->fromID(eventID)) {
1519                                        // to prevent other data entry messages to be misenterpreted as RPN value
1520                                        pChannel->ResetMidiRpnParameter();
1521                                        break;
1522                                    }
1523                                }
1524    
1525                                // do the actual (hard-coded) RPN value change processing
1526                              ProcessHardcodedRpn(pEngineChannel, itControlChangeEvent);                              ProcessHardcodedRpn(pEngineChannel, itControlChangeEvent);
1527    
1528                              // to prevent other data entry messages to be misenterpreted as RPN value                              // to prevent other data entry messages to be misenterpreted as RPN value
# Line 1520  namespace LinuxSampler { Line 1538  namespace LinuxSampler {
1538                              itControlChangeEvent->Param.RPN.Parameter = param;                              itControlChangeEvent->Param.RPN.Parameter = param;
1539                              itControlChangeEvent->Param.RPN.Value = value;                              itControlChangeEvent->Param.RPN.Value = value;
1540    
1541                              // do the actual NRPN event processing                              // if there's a NRPN script handler, run it ...
1542                                if (pChannel->pScript->handlerNrpn) {
1543                                    const event_id_t eventID =
1544                                        pEventPool->getID(itControlChangeEvent);
1545                                    // run the NRPN script handler
1546                                    ProcessEventByScript(
1547                                        pChannel, itControlChangeEvent,
1548                                        pChannel->pScript->handlerNrpn
1549                                    );
1550                                    // if NRPN event was dropped by script, abort
1551                                    // here to avoid hard coded NRPN processing below
1552                                    if (!pEventPool->fromID(eventID)) {
1553                                        // to prevent other data entry messages to be misenterpreted as NRPN value
1554                                        pChannel->ResetMidiNrpnParameter();
1555                                        break;
1556                                    }
1557                                }
1558    
1559                                // do the actual (hard-coded) NRPN value change processing
1560                              ProcessHardcodedNrpn(pEngineChannel, itControlChangeEvent);                              ProcessHardcodedNrpn(pEngineChannel, itControlChangeEvent);
1561    
1562                              // to prevent other data entry messages to be misenterpreted as NRPN value                              // to prevent other data entry messages to be misenterpreted as NRPN value
# Line 1559  namespace LinuxSampler { Line 1595  namespace LinuxSampler {
1595                              itControlChangeEvent->Param.RPN.Parameter = param;                              itControlChangeEvent->Param.RPN.Parameter = param;
1596                              itControlChangeEvent->Param.RPN.Value = value;                              itControlChangeEvent->Param.RPN.Value = value;
1597    
1598                              // do the actual RPN event processing                              // if there's a RPN script handler, run it ...
1599                                if (pChannel->pScript->handlerRpn) {
1600                                    const event_id_t eventID =
1601                                        pEventPool->getID(itControlChangeEvent);
1602                                    // run the RPN script handler
1603                                    ProcessEventByScript(
1604                                        pChannel, itControlChangeEvent,
1605                                        pChannel->pScript->handlerRpn
1606                                    );
1607                                    // if RPN event was dropped by script, abort
1608                                    // here to avoid hard coded RPN processing below
1609                                    if (!pEventPool->fromID(eventID)) {
1610                                        // to prevent other data entry messages to be misenterpreted as RPN value
1611                                        pChannel->ResetMidiRpnParameter();
1612                                        break;
1613                                    }
1614                                }
1615    
1616                                // do the actual (hard-coded) RPN value change processing
1617                              ProcessHardcodedRpn(pEngineChannel, itControlChangeEvent);                              ProcessHardcodedRpn(pEngineChannel, itControlChangeEvent);
1618    
1619                              // to prevent other data entry messages to be misenterpreted as RPN value                              // to prevent other data entry messages to be misenterpreted as RPN value
# Line 1575  namespace LinuxSampler { Line 1629  namespace LinuxSampler {
1629                              itControlChangeEvent->Param.RPN.Parameter = param;                              itControlChangeEvent->Param.RPN.Parameter = param;
1630                              itControlChangeEvent->Param.RPN.Value = value;                              itControlChangeEvent->Param.RPN.Value = value;
1631    
1632                              // do the actual NRPN event processing                              // if there's a NRPN script handler, run it ...
1633                                if (pChannel->pScript->handlerNrpn) {
1634                                    const event_id_t eventID =
1635                                        pEventPool->getID(itControlChangeEvent);
1636                                    // run the NRPN script handler
1637                                    ProcessEventByScript(
1638                                        pChannel, itControlChangeEvent,
1639                                        pChannel->pScript->handlerNrpn
1640                                    );
1641                                    // if NRPN event was dropped by script, abort
1642                                    // here to avoid hard coded NRPN processing below
1643                                    if (!pEventPool->fromID(eventID)) {
1644                                        // to prevent other data entry messages to be misenterpreted as NRPN value
1645                                        pChannel->ResetMidiNrpnParameter();
1646                                        break;
1647                                    }
1648                                }
1649    
1650                                // do the actual (hard-coded) NRPN value change processing
1651                              ProcessHardcodedNrpn(pEngineChannel, itControlChangeEvent);                              ProcessHardcodedNrpn(pEngineChannel, itControlChangeEvent);
1652    
1653                              // to prevent other data entry messages to be misenterpreted as NRPN value                              // to prevent other data entry messages to be misenterpreted as NRPN value

Legend:
Removed from v.3689  
changed lines
  Added in v.3690

  ViewVC Help
Powered by ViewVC