
To model a real unified rank you would have just a single Custom Organ Design Module organ definition (CODM ODF) Rank object for it, with:
Rank.MIDINoteNumberOfFirstPipe
Rank.NumberOfPipes
... specifying the full (extended) range of notes that it encompasses (with a corresponding set of samples), then use StopRank objects to map portions of it to the stops.
As an example, have a look at the "Great: Trumpet 8 (Clarion 4)" rank in the "ExampleCustomOrgan3-StAnnes-Simplified" example CODM ODF:
- Code: Select all
<rank>
<RankID>14</RankID>
<Name>13 Great: Trumpet 8 (Clarion 4)</Name>
<NumberOfPipes>73</NumberOfPipes>
<MIDINoteNumberOfFirstPipe>36</MIDINoteNumberOfFirstPipe>
...
</rank>
...
<stoprank>
<Name>016 Stop: Gt: Trumpet 8</Name>
<StopCode>2109</StopCode>
<RankID>14</RankID>
<MIDINoteNumIncrementFromDivisionToRank>0</MIDINoteNumIncrementFromDivisionToRank>
<MIDINoteNumOfFirstMappedDivisionKey>36</MIDINoteNumOfFirstMappedDivisionKey>
<NumberOfMappedDivisionKeys>61</NumberOfMappedDivisionKeys>
...
</stoprank>
<stoprank>
<Name>017 Stop: Gt: Clarion 4</Name>
<StopCode>2110</StopCode>
<RankID>14</RankID>
<MIDINoteNumIncrementFromDivisionToRank>12</MIDINoteNumIncrementFromDivisionToRank>
<MIDINoteNumOfFirstMappedDivisionKey>36</MIDINoteNumOfFirstMappedDivisionKey>
<NumberOfMappedDivisionKeys>61</NumberOfMappedDivisionKeys>
...
</stoprank>
As in the above excerpts, both the Gt Trumpet 8 and Gt Clarion 4 stops are unified from that single 73-pipe Rank.