Control Surface API  2.2.2
ControllerHost.java
1 package com.bitwig.extension.controller.api;
2 
6 
7 import jdk.nashorn.api.scripting.JSObject;
8 
46 @SuppressWarnings("restriction")
47 public interface ControllerHost extends Host
48 {
53  void loadAPI(int version);
54 
59  boolean shouldFailOnDeprecatedUse();
60 
66  void setShouldFailOnDeprecatedUse(boolean value);
67 
72  void load(String path);
73 
80  boolean platformIsWindows();
81 
88  boolean platformIsMac();
89 
96  boolean platformIsLinux();
97 
117  void defineController(String vendor, String name, String version, String uuid, String author);
118 
132  void defineMidiPorts(int numInports, int numOutports);
133 
142  MidiIn getMidiInPort(int index);
143 
152  MidiOut getMidiOutPort(int index);
153 
172  void addDeviceNameBasedDiscoveryPair(String[] inputs, String[] outputs);
173 
188  @Deprecated
189  void defineSysexIdentityReply(String reply);
190 
198  Preferences getPreferences();
199 
207  DocumentState getDocumentState();
208 
219  NotificationSettings getNotificationSettings();
220 
226  Project getProject();
227 
236  Transport createTransport();
237 
245  Groove createGroove();
246 
255  Application createApplication();
256 
265  Arranger createArranger();
266 
276  Arranger createArranger(final int window);
277 
285  Mixer createMixer();
286 
299  Mixer createMixer(final String panelLayout);
300 
311  Mixer createMixer(final int window);
312 
327  Mixer createMixer(final String panelLayout, final int window);
328 
358  TrackBank createTrackBank(final int numTracks, final int numSends, final int numScenes);
359 
391  TrackBank createTrackBank(
392  final int numTracks,
393  final int numSends,
394  final int numScenes,
395  final boolean hasFlatTrackList);
396 
414  TrackBank createMainTrackBank(final int numTracks, final int numSends, final int numScenes);
415 
431  TrackBank createEffectTrackBank(final int numTracks, final int numScenes);
432 
442  MasterTrack createMasterTrack(final int numScenes);
443 
457  CursorTrack createArrangerCursorTrack(final int numSends, final int numScenes);
458 
475  CursorTrack createCursorTrack(final String name, final int numSends, final int numScenes);
476 
493  CursorTrack createCursorTrack(
494  final String id,
495  String name,
496  final int numSends,
497  final int numScenes,
498  boolean shouldFollowSelection);
499 
518  SceneBank createSceneBank(final int numScenes);
519 
535  @Deprecated
536  CursorDevice createEditorCursorDevice();
537 
553  CursorDevice createEditorCursorDevice(int numSends);
554 
560  @Deprecated
561  Clip createCursorClip(final int gridWidth, final int gridHeight);
562 
574  Clip createLauncherCursorClip(final int gridWidth, final int gridHeight);
575 
587  Clip createArrangerCursorClip(final int gridWidth, final int gridHeight);
588 
599  UserControlBank createUserControls(final int numControllers);
600 
614  @Deprecated
615  void scheduleTask(JSObject callback, Object[] args, long delay);
616 
629  void scheduleTask(Runnable callback, long delay);
630 
636  void requestFlush();
637 
646  void println(String s);
647 
656  void errorln(String s);
657 
666  void showPopupNotification(String text);
667 
680  RemoteSocket createRemoteConnection(String name, int defaultPort);
681 
694  void connectToRemoteHost(String host, int port, ConnectionEstablishedCallback callback);
695 
708  void sendDatagramPacket(String host, int port, byte[] data);
709 
724  boolean addDatagramPacketObserver(String name, int port, DataReceivedCallback callback);
725 
730  @Deprecated
731  void defineController(String vendor, String name, String version, String uuid);
732 
737  @Deprecated
738  Transport createTransportSection();
739 
743  CursorTrack createCursorTrack(final int numSends, final int numScenes);
744 
749  @Deprecated
750  Groove createGrooveSection();
751 
756  @Deprecated
757  Application createApplicationSection();
758 
763  @Deprecated
764  Arranger createArrangerSection(final int screenIndex);
765 
770  @Deprecated
771  Mixer createMixerSection(final String perspective, final int screenIndex);
772 
777  @Deprecated
778  TrackBank createTrackBankSection(final int numTracks, final int numSends, final int numScenes);
779 
784  @Deprecated
785  TrackBank createMainTrackBankSection(final int numTracks, final int numSends, final int numScenes);
786 
791  @Deprecated
792  TrackBank createEffectTrackBankSection(final int numTracks, final int numScenes);
793 
798  @Deprecated
799  CursorTrack createCursorTrackSection(final int numSends, final int numScenes);
800 
805  @Deprecated
806  Track createMasterTrackSection(final int numScenes);
807 
812  @Deprecated
813  Clip createCursorClipSection(final int gridWidth, final int gridHeight);
814 
819  @Deprecated
820  CursorDevice createCursorDeviceSection(final int numControllers);
821 
826  @Deprecated
827  CursorDevice createCursorDevice();
828 
833  @Deprecated
834  UserControlBank createUserControlsSection(final int numControllers);
835 
840  @Deprecated
841  void defineSysexDiscovery(String request, String reply);
842 
848  PopupBrowser createPopupBrowser();
849 
857  BeatTimeFormatter defaultBeatTimeFormatter();
858 
865  void setDefaultBeatTimeFormatter(BeatTimeFormatter formatter);
866 
884  BeatTimeFormatter createBeatTimeFormatter(
885  final String separator,
886  final int barsLen,
887  final int beatsLen,
888  final int subdivisionLen,
889  final int ticksLen);
890 }