Ejemplo n.º 1
0
        public AlphaTabWorkerScoreRenderer(AlphaTabApi api, Settings settings)
        {
            _api = api;
            try
            {
                _worker = new Worker(settings.ScriptFile);
            }
            catch
            {
                // fallback to blob worker
                try
                {
                    HaxeString script = "importScripts('" + settings.ScriptFile + "')";
                    var        blob   = new Blob(new [] { script });
                    _worker = new Worker(URL.CreateObjectURL(blob));
                }
                catch (Exception e)
                {
                    Logger.Error("Rendering", "Failed to create WebWorker: " + e);
                    // TODO: fallback to synchronous mode
                }
            }

            _worker.PostMessage(new { cmd = "alphaTab.initialize", settings = settings.ToJson() });
            _worker.AddEventListener("message", (Action <Event>)(HandleWorkerMessage));
        }
Ejemplo n.º 2
0
        public AlphaSynthWebWorkerApi(ISynthOutput player, string alphaSynthScriptFile, LogLevel logLevel)
        {
            _output                = player;
            _output.Ready         += OnOutputReady;
            _output.SamplesPlayed += OnOutputSamplesPlayed;
            _output.SampleRequest += OnOutputSampleRequest;
            _output.Finished      += OnOutputFinished;

            _events = new FastDictionary <string, FastList <Delegate> >();

            _output.Open();

            try
            {
                _synth = new Worker(alphaSynthScriptFile);
            }
            catch
            {
                // fallback to blob worker
                try
                {
                    HaxeString script = "importScripts('" + alphaSynthScriptFile + "')";
                    var        blob   = new Blob(Script.Write <object>("[ script ]"));
                    _synth = new Worker(URL.CreateObjectURL(blob));
                }
                catch (Exception e)
                {
                    Logger.Error("AlphaSynth", "Failed to create WebWorker: " + e);
                    // TODO: fallback to synchronous mode
                }
            }

            _synth.AddEventListener("message", (Action <MessageEvent>)HandleWorkerMessage, false);

            _synth.PostMessage(new
            {
                cmd        = AlphaSynthWebWorker.CmdInitialize,
                sampleRate = _output.SampleRate,
                logLevel   = logLevel
            });

            MasterVolume    = 1;
            PlaybackSpeed   = 1;
            MetronomeVolume = 0;
        }
Ejemplo n.º 3
0
 public extern Element GetElementById(HaxeString id);
Ejemplo n.º 4
0
 public extern UIEvent(HaxeString type, dynamic eventInitDict);
Ejemplo n.º 5
0
 public extern void Write(HaxeString s);
Ejemplo n.º 6
0
 public extern void FillText(HaxeString text, HaxeFloat x, HaxeFloat y);
Ejemplo n.º 7
0
 public extern object GetContext(HaxeString contextId);
Ejemplo n.º 8
0
 public static extern dynamic Parse(HaxeString text);
Ejemplo n.º 9
0
 [Name("removeEventListener")] public extern void RemoveEventListener(HaxeString type, EventListener listener);
Ejemplo n.º 10
0
 public extern HTMLCollection GetElementsByClassName(HaxeString className);
Ejemplo n.º 11
0
 public extern NodeList QuerySelectorAll(HaxeString selectors);
Ejemplo n.º 12
0
 public extern Element QuerySelector(HaxeString selectors);
Ejemplo n.º 13
0
 public extern Event CreateEvent(HaxeString interface_);
Ejemplo n.º 14
0
 public extern HTMLCollection GetElementsByTagName(HaxeString localName);
Ejemplo n.º 15
0
 public extern Element CreateElement(HaxeString localName);
Ejemplo n.º 16
0
 [Name("addEventListener")] public extern void AddEventListener(HaxeString type, Delegate listener);
Ejemplo n.º 17
0
 [Name("addEventListener")] public extern void AddEventListener(HaxeString type, Delegate listener, HaxeBool capture, bool wantsUntrusted);
Ejemplo n.º 18
0
 public extern void SetAttribute(HaxeString name, HaxeString value);
Ejemplo n.º 19
0
 [Name("removeEventListener")] public extern void RemoveEventListener(HaxeString type, Delegate listener, HaxeBool capture);
Ejemplo n.º 20
0
 public extern Attr GetNamedItem(HaxeString name);
Ejemplo n.º 21
0
 public extern Window Open(HaxeString url, HaxeString target, HaxeString features);
Ejemplo n.º 22
0
 public extern void Add(HaxeString token);
Ejemplo n.º 23
0
 public extern TextDecoder(HaxeString label);
Ejemplo n.º 24
0
 public extern void Remove(HaxeString token);
Ejemplo n.º 25
0
 public extern TextMetrics MeasureText(HaxeString text);
Ejemplo n.º 26
0
 public extern Worker(HaxeString worker);
Ejemplo n.º 27
0
 public extern Node CreateTextNode(HaxeString text);
Ejemplo n.º 28
0
 [Name("addEventListener")] public extern void AddEventListener(HaxeString type, EventListener listener, HaxeBool capture);
Ejemplo n.º 29
0
 public extern MessageEvent(HaxeString type, dynamic eventInitDict);
Ejemplo n.º 30
0
 [Name("initEvent")] public extern void InitEvent(HaxeString type, HaxeBool bubbles, HaxeBool cancelable);