/// <summary> /// Registers a new graphics interop resource for interop with OpenGL image /// </summary> /// <param name="resource">OpenGL resource to register</param> /// <param name="flags">register Flags</param> /// <param name="target">OpenGLImageTarget</param> public CudaOpenGLImageInteropResource(uint resource, CUGraphicsRegisterFlags flags, OpenGLImageTarget target) { _cudaResource = new CUgraphicsResource(); _resource = resource; _registerFlags = flags; _target = target; res = OpenGLNativeMethods.CUDA3.cuGraphicsGLRegisterImage(ref _cudaResource, _resource, target, flags); Debug.Write("");//Line(String.Format("{0:G}, {1}: {2}", DateTime.Now, "cuGraphicsGLRegisterImage", res)); if (res != CUResult.Success) { throw new CudaException(res); } _IsRegistered = true; _IsMapped = false; }
/// <summary> /// Registers a new graphics interop resource for interop with OpenGL image /// </summary> /// <param name="resource">OpenGL resource to register</param> /// <param name="flags">register Flags</param> /// <param name="target">OpenGLImageTarget</param> /// <param name="mapFlags">resource mapping flags</param> public CudaOpenGLImageInteropResource(uint resource, CUGraphicsRegisterFlags flags, OpenGLImageTarget target, CUGraphicsMapResourceFlags mapFlags) : this(resource, flags, target) { SetMapFlags(mapFlags); }