Java 类com.sun.media.sound.ModelPatch 实例源码

项目:TuxGuitar-1.3.1-fork    文件:SF2Soundbank.java   
public Instrument getInstrument(Patch patch) {
    int program = patch.getProgram();
    int bank = patch.getBank();
    boolean percussion = false;
    if (patch instanceof ModelPatch)
        percussion = ((ModelPatch)patch).isPercussion();
    for (Instrument instrument : instruments) {
        Patch patch2 = instrument.getPatch();
        int program2 = patch2.getProgram();
        int bank2 = patch2.getBank();
        if (program == program2 && bank == bank2) {
            boolean percussion2 = false;
            if (patch2 instanceof ModelPatch)
                percussion2 = ((ModelPatch) patch2).isPercussion();
            if (percussion == percussion2)
                return instrument;
        }
    }
    return null;
}
项目:TuxGuitar-1.3.1-fork    文件:SimpleSoundbank.java   
public Instrument getInstrument(Patch patch) {
    int program = patch.getProgram();
    int bank = patch.getBank();
    boolean percussion = false;
    if (patch instanceof ModelPatch)
        percussion = ((ModelPatch)patch).isPercussion();
    for (Instrument instrument : instruments) {
        Patch patch2 = instrument.getPatch();
        int program2 = patch2.getProgram();
        int bank2 = patch2.getBank();
        if (program == program2 && bank == bank2) {
            boolean percussion2 = false;
            if (patch2 instanceof ModelPatch)
                percussion2 = ((ModelPatch)patch2).isPercussion();
            if (percussion == percussion2)
                return instrument;
        }
    }
    return null;
}
项目:TuxGuitar-1.3.1-fork    文件:SimpleInstrument.java   
public void setPatch(Patch patch) {
    if (patch instanceof ModelPatch && ((ModelPatch)patch).isPercussion()) {
        percussion = true;
        bank = patch.getBank();
        preset = patch.getProgram();
    } else {
        percussion = false;
        bank = patch.getBank();
        preset = patch.getProgram();
    }
}
项目:TuxGuitar-1.3.1-fork    文件:SF2Instrument.java   
public void setPatch(Patch patch) {
    if (patch instanceof ModelPatch && ((ModelPatch) patch).isPercussion()) {
        bank = 128;
        preset = patch.getProgram();
    } else {
        bank = patch.getBank() >> 7;
        preset = patch.getProgram();
    }
}
项目:tuxguitar    文件:MidiSynthesizerManager.java   
private ModelPatch toModelPatch(Patch patch) {
    if( patch instanceof ModelPatch ) {
        return (ModelPatch) patch;
    }
    return new ModelPatch(patch.getBank() == PERCUSSION_BANK ? 0 : patch.getBank(), patch.getProgram(), patch.getBank() == PERCUSSION_BANK);
}
项目:tuxguitar    文件:MidiSynthesizerManager.java   
private boolean isSamePatch(Patch p1, Patch p2) {
    ModelPatch mp1 = this.toModelPatch(p1);
    ModelPatch mp2 = this.toModelPatch(p2);

    return (mp1.getBank() == mp2.getBank() && mp1.getProgram() == mp2.getProgram() && mp1.isPercussion() == mp2.isPercussion());
}
项目:TuxGuitar-1.3.1-fork    文件:MidiSynthesizerManager.java   
private ModelPatch toModelPatch(Patch patch) {
    if( patch instanceof ModelPatch ) {
        return (ModelPatch) patch;
    }
    return new ModelPatch(patch.getBank() == PERCUSSION_BANK ? 0 : patch.getBank(), patch.getProgram(), patch.getBank() == PERCUSSION_BANK);
}
项目:TuxGuitar-1.3.1-fork    文件:MidiSynthesizerManager.java   
private boolean isSamePatch(Patch p1, Patch p2) {
    ModelPatch mp1 = this.toModelPatch(p1);
    ModelPatch mp2 = this.toModelPatch(p2);

    return (mp1.getBank() == mp2.getBank() && mp1.getProgram() == mp2.getProgram() && mp1.isPercussion() == mp2.isPercussion());
}
项目:TuxGuitar-1.3.1-fork    文件:SimpleInstrument.java   
public ModelPatch getPatch() {
    return new ModelPatch(bank, preset, percussion);
}
项目:TuxGuitar-1.3.1-fork    文件:SF2Instrument.java   
public Patch getPatch() {
    if (bank == 128)
        return new ModelPatch(0, preset, true);
    else
        return new ModelPatch(bank << 7, preset, false);
}