public class SPD11SettingsDriver extends AbstractPatchDriver
Modifier and Type | Field and Description |
---|---|
protected String[] |
SPD11_PATCHES1 |
bankNumbers, checksumEnd, checksumOffset, checksumStart, deviceIDoffset, log, numSysexMsgs, patchNameSize, patchNameStart, patchNumbers, patchSize, sysexID, sysexRequestDump, trimSize
Constructor and Description |
---|
SPD11SettingsDriver() |
Modifier and Type | Method and Description |
---|---|
void |
calculateChecksum(byte[] sysex,
int start,
int end,
int offset)
SPD11PatchDriver CheckSum calculation replaces the offset byte
with the result of the formula 128 -(sum % 128) |
Patch |
createNewPatch()
TODO:replace this by an external standard "Settings"
|
Patch |
createNewPatch(byte[] sysex) |
Patch |
createPatch(byte[] sysex)
Create a patch from a byte array for the driver.
|
JSLFrame |
editPatch(Patch p)
Override this if your driver implement Patch Editor.
|
String |
getPatchName(Patch p)
Gets the name of the patch from the sysex.
|
void |
requestPatchDump(int bankNum,
int patchNum)
Request the synth to send a patch dump.
|
void |
sendPatch(Patch p)
Sends a patch to the synth's edit buffer.
|
void |
storePatch(Patch p,
int bankNum,
int patchNum)
Sends a settings to a set patch
|
getFullPatchName, getPatchNumbersForStore, hasEditor, isBankDriver, isConverter, isSingleDriver, setPatchName
calculateChecksum, calculateChecksum, canCreatePatch, createPatch, createPatches, generateNumbers, getAuthors, getBankNumbers, getChannel, getChecksumEnd, getChecksumOffset, getChecksumStart, getDevice, getDeviceID, getDeviceIDoffset, getManufacturerName, getModelName, getPatchFactory, getPatchNameSize, getPatchNameStart, getPatchNumbers, getPatchSize, getPatchType, getSynthName, getSysexID, getSysexRequestDump, getTrimSize, playPatch, send, send, send, send, sendPatchWorker, setBankNum, setBankNumbers, setChecksumEnd, setChecksumOffset, setChecksumStart, setDevice, setDeviceIDoffset, setPatchNameSize, setPatchNameStart, setPatchNum, setPatchNumbers, setPatchSize, setSysexID, setSysexRequestDump, setTrimSize, supportsPatch, toString, trimSysex
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
calculateChecksum, canCreatePatch, createPatch, createPatches, getAuthors, getBankNumbers, getChannel, getChecksumEnd, getChecksumOffset, getChecksumStart, getDevice, getDeviceID, getDeviceIDoffset, getPatchNameSize, getPatchNameStart, getPatchNumbers, getPatchSize, getPatchType, getSysexID, getSysexRequestDump, getTrimSize, playPatch, send, setBankNumbers, setChecksumEnd, setChecksumOffset, setChecksumStart, setDevice, setDeviceIDoffset, setPatchNameSize, setPatchNameStart, setPatchNumbers, setPatchSize, setSysexID, setSysexRequestDump, setTrimSize, supportsPatch, toString, trimSysex
protected final String[] SPD11_PATCHES1
public void calculateChecksum(byte[] sysex, int start, int end, int offset)
calculateChecksum
in interface IDriver
calculateChecksum
in class AbstractDriver
p
- the patch we work withstart
- is where the values start adding to the sumend
- is where the values stops adding to the sumoffset
- is where the checksum value is replacedAbstractDriver.calculateChecksum(Patch)
public void requestPatchDump(int bankNum, int patchNum)
AbstractDriver
sysexRequestDump
is not null
, a request dump message is sent. Otherwise a
dialog window will prompt users.requestPatchDump
in interface IDriver
requestPatchDump
in class AbstractDriver
patchNum
- is always 0 for settings so ignoredbankNum
- is the SPD-11 patch we request settings fromAbstractDriver.requestPatchDump(int, int)
public Patch createNewPatch()
createNewPatch
in class AbstractDriver
IDriver.createPatch()
,
AbstractDriver.createPatch()
public Patch createNewPatch(byte[] sysex)
public Patch createPatch(byte[] sysex)
IDriver
IDriver.supportsPatch()
returns true
.createPatch
in interface IDriver
createPatch
in class AbstractDriver
sysex
- a byte array of sysex data.IPatch
object.IDriver.supportsPatch(String, byte[])
,
DriverUtil#createPatch(byte[])
public void sendPatch(Patch p)
AbstractDriver
Override this in the subclass if parameters or warnings need to be sent to the user (aka if the particular synth does not have a edit buffer or it is not MIDI accessable).
sendPatch
in interface IDriver
sendPatch
in class AbstractDriver
Patch.send()
,
ISinglePatch#send()
public void storePatch(Patch p, int bankNum, int patchNum)
storePatch
in interface IDriver
storePatch
in class AbstractPatchDriver
p
- bankNum
- is the SPD-11 patchpatchNum
- is ignored because it's always 0 for settingsPatch.send(int, int)
public String getPatchName(Patch p)
AbstractPatchDriver
getPatchName
in interface IDriver
getPatchName
in class AbstractPatchDriver
Patch.getName()
public JSLFrame editPatch(Patch p)
AbstractPatchDriver
editPatch
in interface IDriver
editPatch
in class AbstractPatchDriver
Patch.edit()
Copyright © 2014. All Rights Reserved.