package com.akjava.gwt.html5.client.media; import com.google.gwt.core.client.JavaScriptObject; /* * TODO more */ public class OfflineAudioContext extends AudioContext{ protected OfflineAudioContext(){} public final static native OfflineAudioContext create(int channel,int length,int sampleRate)/*-{ $wnd.window.OfflineAudioContext=$wnd.window.OfflineAudioContext || $wnd.window.webkitOfflineAudioContext; return new $wnd.window.OfflineAudioContext(channel,length,sampleRate); }-*/; public final static native boolean isAvailableOffline()/*-{//no need? if(window.OfflineAudioContext || window.webkitOfflineAudioContext){ return true; }else{ return false; } }-*/; public final native void startRendering()/*-{ this.startRendering(); }-*/; public final native ScriptProcessorNode createScriptProcessor(int bufferSize,int numberOfInputChannels,int numberOfOutputChannels)/*-{ return this.createScriptProcessor(bufferSize,numberOfInputChannels,numberOfOutputChannels); }-*/; public final native void setOnComplete(CompleteListener listener)/*-{ this.oncomplete( function(){ listener.@com.akjava.gwt.html5.client.media.OfflineAudioContext$CompleteListener::onComplete()(); } ); }-*/; public interface CompleteListener{ public void onComplete(); } }