Ejemplo n.º 1
0
 // Program methods
 public void BuildProgram(Device[] deviceList, string options, ProgramNotify callback, object userData)
 {
     var dev = Device.ToIntPtr(deviceList);
     var pfn = (ProgramNotifyData)null;
     var pcb = (ProgramNotifyInternal)null;
     var ptr = IntPtr.Zero;
     if (callback != null) {
         pfn = new ProgramNotifyData(callback, userData);
         pcb = ProgramNotifyData.Callback;
         ptr = GCHandle.ToIntPtr(pfn.Handle);
     }
     var err = NativeMethods.clBuildProgram(this.handle, (uint)dev.Length, dev, options, pcb, ptr);
     if (err != ErrorCode.Success) {
         throw new OpenClException(err);
     }
 }