 
 -}
 clEnqueueCopyBufferToImage :: Integral a 
-                              => CLCommandQueue -- ^ Must be a valid
-                                                -- command-queue. The OpenCL
-                                                -- context associated with
+                              => CLCommandQueue -- ^ The OpenCL context
+                                                -- associated with
                                                 -- command_queue, src_image, and
                                                 -- dst_buffer must be the same.
                               -> CLMem -- ^ src. A valid buffer object.

      nevents = length events
      cnevents = fromIntegral nevents

{-
foreign import CALLCONV "clEnqueueMapImage" raw_clEnqueueMapImage ::
  CLCommandQueue -> CLMem -> CLbool -> CLMapFlags_ -> Ptr CSize -> Ptr CSize -> Ptr CSize -> Ptr CSize -> CLuint -> Ptr CLEvent -> Ptr CLEvent -> Ptr CLint -> IO (Ptr ())
foreign import CALLCONV "clEnqueueUnmapMemObject" raw_clEnqueueUnmapMemObject ::
  CLCommandQueue -> CLMem -> Ptr () -> CLuint -> Ptr CLEvent -> Ptr CLEvent -> IO CLint
-}


'clEnqueueMapBuffer' will return a pointer to the mapped region if the function
is executed successfully. A nullPtr pointer is returned otherwise with one of
the following exception:

 * 'CL_INVALID_COMMAND_QUEUE' if command_queue is not a valid command-queue.

