private void HandleWorkerMessage(DOMEvent e)
{
var data = e.As<MessageEvent>().data;
var cmd = data.Member("cmd").As<string>();
switch (cmd)
{
case "preRender":
OnPreRender(data.Member("result").As<RenderFinishedEventArgs>());
break;
case "partialRenderFinished":
OnPartialRenderFinished(data.Member("result").As<RenderFinishedEventArgs>());
break;
case "renderFinished":
OnRenderFinished(data.Member("result").As<RenderFinishedEventArgs>());
break;
case "postRenderFinished":
BoundsLookup = BoundsLookup.FromJson(data.Member("boundsLookup"), Score);
OnPostRenderFinished();
break;
case "error":
console.error(data.Member("exception"));
break;
case "loaded":
var score = data.Member("score").As<Score>();
if (score.As<bool>())
{
var jsonConverter = new JsonConverter();
score = jsonConverter.JsObjectToScore(score);
}
Score = score;
OnLoaded(score);
break;
}
}