2013-12-09  Sharath Kamath  <s.kamath@samsung.com>

        Update "Reading from WebCL" API set to support HTMLCanvasElement.

        Issue #328

        Reviewed by NOBODY (OOPS!).

        Conformance test cases:
        conformance/buffimgs/cl_commandQueue_enqueueReadBufferRect_with_HTMLCanvasElement.html
        conformance/buffimgs/cl_commandQueue_enqueueReadImage_with_HTMLCanvasElement.html
        conformance/buffimgs/cl_commandQueue_enqueueReadBuffer_with_HTMLCanvasElement.html
        [https://github.com/SRA-SiliconValley/webkit-webcl-conformance]

        Covers the changes to ::
        1. Match existing enqueueReadBuffer, enqueueReadImage & enqueueReadBufferRect as per specification.
        2. Add support for HTMLCanvasElement for all the 3 API.
        3. Also checks for the input array/canvas to throw exception on boundry condition violations.
        4. Adds a generic Class for WebCLHTMLInterop for all fucntionality on HTML.
        5. Route createBuffer with HTMLCanvas via WebCLHTMLInterop.

        * Modules/webcl/WebCLCommandQueue.cpp:
        (WebCore::WebCLCommandQueue::enqueueReadBufferBase):
        (WebCore::WebCLCommandQueue::enqueueReadBuffer):
        (WebCore::WebCLCommandQueue::enqueueReadImageBase):
        (WebCore::WebCLCommandQueue::enqueueReadImage):
        (WebCore::WebCLCommandQueue::enqueueReadBufferRectBase):
        (WebCore::WebCLCommandQueue::enqueueReadBufferRect):
        * Modules/webcl/WebCLCommandQueue.h:
        * Modules/webcl/WebCLCommandQueue.idl: