#Warning! Strange things may happen if this file is changed.
#The file is copied from ../python/ during make-process.

# This file contains the info to generate radium.i, wraplistfunc.c, radium_wrap.c and radium_proc.h
# Its also used by keybindingsconf.py to find default arguments.

# ?S lines are inserted into radium.i, and ?H lines are inserted into radium_proc.h

# Important, syntax must be: "char* funcname", not: "char<space>*funcname" or "char<space>* funcname".



#***************************************
# Lines inserted in the top of radium.i
#***************************************
?S    %module radium
?S    %typemap(python,in) PyObject* {
?S	$target=$source;
?S    }
?S    /* Put headers and other declarations here-*/
?S    %{
?S    %}



#/*******************************************
#  Initialization
#*******************************************/

init_radium 		| char* arg | PyObject* gkf
const char* ER_keyAdd	| int key | char* funcname | PyObject* keys | PyObject* args



#/*******************************************
#  Computer Keyboard Note Playing/Editing 
#*******************************************/

keyDownPlay 		| int notenum | int windownum ? -1
polyKeyDownPlay 	| int notenum | int windownum ? -1
keyUpPlay 		| int notenum | int windownum ? -1

setKeyAdd 		| int addnum
incKeyAdd 		| int incaddnum
decKeyAdd 		| int decaddnum

switchEditOnOff
switchSoundScrollOnOff	| int windownum ? -1

incNoteVolume | int incvolume | int windownum ? -1

bool doScrollPlay
setScrollPlay | bool doit
switchScrollPlayOnOff

bool doScrollEditLines
setScrollEditLines | bool doit
setNoteScrollLength | int length



#/*******************************************
#  Navigating 
#*******************************************/

cursorDown		| int numlines | int windownum ? -1
cursorUp 		| int numlines | int windownum ? -1
cursorNextNote 		| int windownum ? -1
cursorPrevNote 		| int windownum ? -1
cursorUserInputLine
cursorUserInputBeat
cursorPercentLine 	| int percent | int windownum ? -1

selectNextBlock 	| int windownum ? -1
selectPrevBlock 	| int windownum ? -1
selectNextPlaylistBlock
selectPrevPlaylistBlock
selectTrack 		| int tracknum | int windownum ? -1

cursorRight 		| int windownum ? -1
cursorNextTrack 	| int windownum ? -1
cursorLeft		| int windownum ? -1
cursorPrevTrack 	| int windownum ? -1


#/*******************************************
#  Track on/off
#*******************************************/

allTracksOn

switchTrackOn		| int tracknum ? -1 | int windownum ? -1
soloTrack		| int tracknum ? -1 | int windownum ? -1
switchSoloTrack		| int tracknum ? -1 | int windownum ? -1


#/*******************************************
#  Zoom
#*******************************************/

expandBlock | int blocknum ? -1
expandRange | int blocknum ? -1 | int windownum ? -1

lineZoomBlock | int numlines | int blocknum ? -1 | int windownum ? -1

expandLine | int numlines | int windownum ? -1

splitLine | int numlines | int windownum ? -1

unsplitLine | int windownum ? -1

zoom | int incfontsize | int windownum ? -1

unzoom | int windownum ? -1


#/*******************************************
#  Notemanipulation
#*******************************************/
transposeTrack | int transpose | int windownum ? -1
transposeBlock | int transpose | int windownum ? -1
transposeRange | int transpose | int windownum ? -1
transposeNote | int transpose | int windownum ? -1

invertTrack | int windownum ? -1
invertBlock | int windownum ? -1
invertRange | int windownum ? -1

pexpandTrack | int f ? -1000 | int windownum ? -1
pexpandBlock | int f ? -1000 | int windownum ? -1
pexpandRange | int f ? -1000 | int windownum ? -1

backwardsTrack | int windownum ? -1
backwardsBlock | int windownum ? -1
backwardsRange | int windownum ? -1

quantitizeTrack | int windownum ? -1
quantitizeBlock | int windownum ? -1
quantitizeRange | int windownum ? -1

float getQuantitize
float getGrid
configQuantitize | int windownum ? -1

glissando | int windownum ? -1

char* getNoteName2 | int notenum ? -1
char* getNoteName3 | int notenum ? -1
float getNoteNameValue | char* notename

float getLowestKey | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getHighestKey | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1

int getPianorollLowKey | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
int getPianorollHighKey | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
setPianorollLowKey | int key | int tracknum | int blocknum | int windownum ? -1
setPianorollHighKey | int key | int tracknum | int blocknum | int windownum ? -1

int getNoteNote | int windownum ? -1 | int blocknum ? -1 | int tracknum ? -1 | int notenum ? -1
void putNoteNote | int notenote | int windownum ? -1 | int blocknum ? -1 | int tracknum ? -1 | int notenum ? -1
int getMaxVolume
int getNoteVolume | int windownum ? -1 | int blocknum ? -1 | int tracknum ? -1 | int notenum ? -1
float getNotePlace | int windownum ? -1 | int blocknum ? -1 | int tracknum ? -1 | int notenum ? -1
float getNoteEndPlace | int windownum ? -1 | int blocknum ? -1 | int tracknum ? -1 | int notenum ? -1
int getNumNotes | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1

setSignature | int numerator | int denominator
setLPB | int lpb
setBPM | int bpm

int addSignature | int numerator | int denominator | int line | int counter | int dividor | int blocknum ? -1
int addLPB | int lpb | int line | int counter | int dividor | int blocknum ? -1
int addBPM | int bpm | int line | int counter | int dividor | int blocknum ? -1

void setNoteEndPlace | int line | int counter | int dividor | int windownum ? -1 | int blocknum ? -1 | int tracknum ? -1 | int notenum ? -1
int addNote | int notenum | int velocity | int place_line | int place_counter | int place_dividor | int end_line ? -1 | int end_counter ? -1 | int end_dividor ? -1 | int windownum ? -1 | int blocknum ? -1 | int tracknum ? -1 

#/*******************************************
#  Playing
#*******************************************/
playBlockFromStart | int windownum ? -1
playBlockFromCurrent | int windownum ? -1
playSongFromStart
playSongFromCurrent | int windownum ? -1
playRange | int windownum ? -1

playStop
volumeUp
volumeDown
mute
int isPlaying


#/*******************************************
#  Clipboard
#*******************************************/

cancelRange | int windownum ? -1
cutRange | int windownum ? -1
cutTrack | int windownum ? -1
copyRange | int windownum ? -1
copyTrack | int windownum ? -1
copyBlock | int windownum ? -1
pasteRange | int windownum ? -1
pasteTrack | int windownum ? -1
pasteBlock | int windownum ? -1
markRange | int windownum ? -1


#/*******************************************
#  Undo
#*******************************************/

setMaxUndos | int windownum ? -1
redo
undo


#/*******************************************
#  Various
#*******************************************/

editorWindowToFront | int windownum ? -1
playListWindowToFront
instrumentWindowToFront
helpWindowToFront

maximizeEditorWindow | int windownum ? -1
minimizeEditorWindow | int windownum ? -1

toggleFullScreen | int windownum ? -1
showHideEditor | int windownum ? -1
showHideMixerWidget

showHideInstrumentWidget | int windownum ? -1
showHidePlaylist | int windownum ? -1

showHideMenuBar | int windownum ? -1
hideMenuBar | int windownum ? -1
showMenuBar | int windownum ? -1

switchWindowConfiguration

addFX | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
addFXMousePos | int windownum ? -1

enableMetronome | bool onoff

insertReallines | int toinsert | int windownum ? -1
generalDelete | int windownum ? -1
insertLines | int toinsert ? 0 | int windownum ? -1 
generalReturn | int windownum ? -1
appendBlock
appendTrack | int blocknum ? -1
swapTracks | int windownum ? -1
makeTrackMonophonic | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
splitTrackIntoMonophonicTracks | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
splitBlock | int windownum ? -1
setNumTracks | int numtracks | int blocknum ? -1 | int windownum ? -1
setNumLines | int numlines | int blocknum ? -1 | int windownum ? -1
changeTrackNoteLength | int windownum ? -1
changeBlockNoteLength | int windownum ? -1
changeTrackNoteAreaWidth | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
changeBlockNoteAreaWidth | int windownum ? -1
minimizeTrack | int windownum ? -1
minimizeBlockTracks | int windownum ? -1
quit
saveSoundfile
openCommentDialog
openPreferencesDialog
openMIDIPreferencesDialog
openToolsDialog
openAboutWindow
char* getProgramPath
char* getConfPath | char* filename
char* getKeybindingsConfPath
char* getMenuesConfPath
saveAs
save
load
loadSong | char* filename
newSong
importMidi
insertTracks | int numtracks | int windownum ? -1
deleteTracks | int numtracks | int windownum ? -1
deleteBlock | int windownum ? -1
insertBlock | int windownum ? -1
int getNumTracks | int blocknum ? -1
int getNumBlocks
setTrackNoteShowType | int type | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
setTrackVolume | float volume | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
setTrackPan | float pan | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
switchTrackNoteShowType | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
setBlockNoteShowType | int type | int blocknum ? -1 | int windownum ? -1
switchBlockNoteShowType | int blocknum ? -1 | int windownum ? -1
showHidePianoroll | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
showHidePianorollInBlock | int blocknum ? -1 | int windownum ? -1
showHideNoteTrack | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
showHideNoteTracksInBlock | int blocknum ? -1 | int windownum ? -1

showHideSignatureTrack | int windownum ? -1
showHideLPBTrack | int windownum ? -1
showHideBPMTrack | int windownum ? -1
showHideReltempoTrack | int windownum ? -1
bool signatureTrackVisible | int windownum ? -1
bool lpbTrackVisible | int windownum ? -1
bool bpmTrackVisible | int windownum ? -1
bool reltempoTrackVisible | int windownum ? -1
bool linenumbersVisible
setLinenumbersVisible | bool doit
bool doAutoBackups
setDoAutoBackups | bool doit
int autobackupIntervalInMinutes
setAutobackupIntervalInMinutes | int interval

addMenuMenu | char* name | char* command
goPreviousMenuLevel
addMenuItem | char* name | char* command
addCheckableMenuItem | char* name | char* command | int checkval ? 0
addMenuSeparator

setStatusbarText | char* text | int windownum ? -1

int getWebserverPort
eraseEstimatedVblank
evalScheme | char* code

bool isFullVersion

bool doModalWindows
setModalWindows | bool doit

printMixerTree


#/*******************************************
#  Instruments
#*******************************************/

selectPatchForTrack | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
setInstrumentForTrack | int instrumentnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
int createNewInstrument | char* type | char* name
setInstrumentName | int instrument_num | char* name
char* getInstrumentName | int instrument_num
#setInstrumentVolume | int instrument_num | float volume
#float getInstrumentVolume | int instrument_num
setInstrumentData | int instrument_num | char* key | char* value
char* getInstrumentData | int instrument_num | char* key
midi_resetAllControllers
midi_localKeyboardOn
midi_localKeyboardOff
midi_allNotesOff
midi_allSoundsOff
midi_recordAccurately | bool accurately
midi_alwaysRecordVelocity | bool doit
midi_setInputPort


#/*******************************************
#  Requester
#*******************************************/

configColors | int windownum ? -1
setDefaultColors1
setDefaultColors2
configSystemFont
configFonts  | int windownum ? -1
setDefaultEditorFont
setDefaultSystemFont
configWindow | int windownum ? -1
configBlock | int windownum ? -1
configVST | int windownum ? -1

const char* getLoadFilename | char* text | char* dir ? ""
const char* getSaveFilename | char* text | char* dir ? ""
openRequester | char* text | int width ? 50 | int height ? 20
closeRequester
int requestInteger | char* text | int min | int max
float requestFloat | char* text | float min | float max
char* requestString | char* text
int requestMenu | char* text | PyObject* arguments
int popupMenu | char* texts
char* requestMidiPort
showMessage | char* text
showWarning | char* text
showError | char* text



#/************************************************************************
#  Mouse (including functions to get positions of graphical objects, etc.)
#************************************************************************/

cancelCurrentNode
cancelIndicatorNode

float getPlaceFromY | float y | int blocknum ? -1 | int windownum ? -1
float getPlaceInGridFromY | float y | int blocknum ? -1 | int windownum ? -1
float getNextPlaceInGridFromY | float y | int blocknum ? -1 | int windownum ? -1    
float getHalfOfNodeWidth
float getTopVisibleY | int blocknum ? -1 | int windownum ? -1
float getBotVisibleY | int blocknum ? -1 | int windownum ? -1
setNoMouseTrack
setMouseTrackToReltempo
setMouseTrack | int tracknum

# block
float getBlockHeaderY2 | int blocknum ? -1 | int windownum ? -1

# track
float getTrackX1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackY1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackX2 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackY2 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1

float getTrackPianorollX1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackPianorollY1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackPianorollX2 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackPianorollY2 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1

float getTrackNotesX1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackNotesY1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackNotesX2 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackNotesY2 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1

float getTrackFxX1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackFxY1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackFxX2 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackFxY2 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1

int getLeftmostTrackNum
int getRelTempoTrackNum
int getTempoTrackNum
int getLPBTrackNum
int getSignatureTrackNum
int getTempoColorTrackNum
int getLinenumTrackNum

#reltemposlider
float getReltempoSliderX1
float getReltempoSliderY1
float getReltempoSliderX2
float getReltempoSliderY2

float getReltempo | int blocknum ? -1 | int windownum ? -1
undoReltempo
setReltempo | float reltempo
float getMinReltempo
float getMaxReltempo

# Set track patch
setTrackPatch | int tracknum ? -1 |  int blocknum ? -1 | int windownum ? -1


# track panning on/off
float getTrackPanOnOffX1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackPanOnOffY1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackPanOnOffX2 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackPanOnOffY2 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
bool getTrackPanOnOff | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
undoTrackPanOnOff | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
setTrackPanOnOff | bool onoff | int tracknum ? -1 | int blocknum ?  -1 | int windownum ? -1


# track volumening on/off
float getTrackVolumeOnOffX1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackVolumeOnOffY1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackVolumeOnOffX2 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackVolumeOnOffY2 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
bool getTrackVolumeOnOff | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
undoTrackVolumeOnOff | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
setTrackVolumeOnOff | bool onoff | int tracknum ? -1 | int blocknum ?  -1 | int windownum ? -1


# track panning sliders
float getTrackPanSliderX1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackPanSliderY1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackPanSliderX2 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackPanSliderY2 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackPan | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
undoTrackPan | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
#setTrackPan | float pan | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1

# track volumening sliders
float getTrackVolumeSliderX1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackVolumeSliderY1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackVolumeSliderX2 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackVolumeSliderY2 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getTrackVolume | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
undoTrackVolume | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
#setTrackVolume | float volume | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1

#temponodes
int getTemponodeAreaX1
int getTemponodeAreaY1
int getTemponodeAreaX2
int getTemponodeAreaY2

float getTemponodeMax | int blocknum ? -1 | int windownum ? -1

float getTemponodeX | int num
float getTemponodeY | int num
float getTemponodeValue | int num | int blocknum ? -1 | int windownum ? -1

int getNumTemponodes | int blocknum ? -1 | int windownum ? -1

undoTemponodes
setCurrentTemponode | int num | int blocknum ? -1
setIndicatorTemponode | int num | int blocknum ? -1
setTemponode | int num | float value | float place | int blocknum ? -1 | int windownum ? -1 # if place < 0, a new place will not be set.
deleteTemponode | int num | int blocknum ? -1
int createTemponode | float value | float floatplace | int blocknum ? -1 | int windownum ? -1 # Returns the node number, or -1 if a node was not created.

#pianoroll
bool pianorollVisible | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
int getPioanorollLowKey | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
int getPioanorollHighKey | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getPianonoteX1 | int pianonotenum | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getPianonoteY1 | int pianonotenum | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getPianonoteX2 | int pianonotenum | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getPianonoteY2 | int pianonotenum | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getPianonoteValue | int pianonotenum | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
int getNumPianonotes | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
setCurrentPianonote | int num | int notenum | int tracknum
cancelCurrentPianonote

int movePianonote | int pianonotenum | float value | float floatplace | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1 # returns the notenum. It might change if moved past another.
int movePianonoteStart | int pianonotenum | float value | float floatplace | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1 # returns the notenum. It might change if moved past another.
int movePianonoteEnd | int pianonotenum | float value | float floatplace | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1 # returns the notenum. It might change if moved past another.
int createPianonote | float value | float floatplace | float endfloatplace | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1 # returns notenum, or -1 if note couldnt be made
deletePianonote | int pianonotenum | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1


#pitches
int getNumPitches | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getPitchX1 | int pitchnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getPitchY1 | int pitchnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getPitchX2 | int pitchnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getPitchY2 | int pitchnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getPitchX | int pitchnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getPitchY | int pitchnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getPitchValue | int pitchnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
setCurrentPitch | int num | int tracknum ? -1 | int blocknum ? -1
setIndicatorPitch | int num | int tracknum ? -1 | int blocknum ? -1
int setPitch | int num | float value | float place | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1 # if place < 0, a new place will not be set. Returns new pitchnum.
deletePitch | int pitchnum | int tracknum ? -1 | int blocknum ? -1
int createPitch | float value | float place | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1 # Returns the node number, or -1 if a node was not created.

#subtracks
int getNumSubtracks | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getSubtrackX1 | int subtracknum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getSubtrackX2 | int subtracknum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1

#notes
undoNotes | int tracknum ? -1 | int blocknum ? -1
float getNoteStart | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getNoteEnd | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
int getNoteSubtrack | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
setNoMouseNote | int blocknum ? -1 | int windownum ? -1
setMouseNote | int notenum ? -1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1

#velocities
float getVelocityX | int num | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getVelocityY | int num | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getVelocityValue | int num | int notenum ? -1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
int getNumVelocities | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
int createVelocity | float value | float floatplace | int notenum ? -1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
int setVelocity | int velocitynum | float value | float floatplace | int notenum ? -1 | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1 # if place < 0, a new place will not be set. Returns notenum.
void deleteVelocity | int velocitynum | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
setCurrentVelocityNode | int velocitynum | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
setIndicatorVelocityNode | int velocitynum | int notenum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1

#fxes
float getFxnodeX | int num | int fxnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getFxnodeY | int num | int fxnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getFxnodeValue | int num | int fxnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
const_char* getFxName | int fxnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
char* getFxString | int fxnodenum | int fxnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
int getNumFxes | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
int getNumFxnodes | int fxnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getFxMinValue | int fxnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
float getFxMaxValue | int fxnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
int createFxnode | float value | float floatplace | int fxnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
setFxnode | int fxnodenum | float value | float place | int fxnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
deleteFxnode | int fxnodenum | int fxnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
setCurrentFxnode | int fxnodenum | int fxnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
setIndicatorFxnode | int fxnodenum | int fxnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
setNoMouseFx | int blocknum ? -1 | int windownum ? -1
setMouseFx | int fxnum | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
undoFxs | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1

#track widths
float getTrackWidth | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1
setTrackWidth | float new_width | int tracknum ? -1 | int blocknum ? -1 | int windownum ? -1

#modifier keys
bool ctrlPressed
bool shiftPressed
# bool extraPressed # Right extra is always used to configure block
bool leftExtraPressed
bool altPressed

#mouse pointer
setNormalMousePointer | int windownum ? -1
setPointingMousePointer | int windownum ? -1
setBlankMousePointer | int windownum ? -1
setDiagonalResizeMousePointer | int windownum ? -1
setVerticalResizeMousePointer | int windownum ? -1
setHorizontalResizeMousePointer | int windownum ? -1
moveMousePointer | float x | float y | int windownum ? -1
float getMousePointerX | int windownum ? -1
float getMousePointerY | int windownum ? -1


#/*******************************************
#  Advanced 
#*******************************************/

addNoteAdds | PyObject* noteadds | int windownum | int blocknum | int tracknum | float startplace | int sort



