protected Dictionary <string, byte[]> Process(FlScriptExecutionContext context) { MemoryBuffer buf = CLAPI.CreateBuffer(Instance, context.Input, MemoryFlag.ReadWrite); FLInterpreter ret = new FLInterpreter(Instance, context.Filename, buf, context.Width, context.Height, 1, 4, Db, true); do { ret.Step(); } while (!ret.Terminated); byte[] buffer = ret.GetResult <byte>(); Dictionary <string, byte[]> result = new Dictionary <string, byte[]> { { "result", buffer } }; foreach (KeyValuePair <string, Bitmap> keyValuePair in context.TextureMap) { CLBufferInfo mbuf = ret.GetBuffer(keyValuePair.Key); if (mbuf == null) { continue; } byte[] spec = CLAPI.ReadBuffer <byte>(Instance, mbuf.Buffer, (int)mbuf.Buffer.Size); result.Add(keyValuePair.Key, spec); mbuf.Buffer.Dispose(); } return(result); }