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 |
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 |
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 |
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 |