2013-03-03  Igor Oliveira  <igor.o@sisa.samsung.com>

        For our own sake, WebCL objects should create opencl objects internally.
        Issue #145

        This patch is the first attempt to fix WebCL objects creation.
        For now, WebCLPlatform objects can only be constructed by WebCore::getPlatforms.
        This change was done because WebCLPlatform was used in the wrong place and we
        are trying to avoid mistakes using that defensive approach.

        Reviewed by Antonio Gomes.

        * Modules/webcl/WebCL.cpp:
        (WebCore::WebCL::getPlatforms):
        (WebCore::WebCL::defaultProperties):
        (WebCore::WebCL::createContext):
        * Modules/webcl/WebCL.h:
        (WebCL):
        * Modules/webcl/WebCLContext.cpp:
        (WebCore::WebCLContext::create):
        (WebCore::WebCLContext::WebCLContext):
        (WebCore::WebCLContext::getInfo):
        * Modules/webcl/WebCLContext.h:
        (WebCLContext):
        * Modules/webcl/WebCLContextProperties.cpp:
        (WebCore::WebCLContextProperties::platform):
        (WebCore):
        (WebCore::WebCLContextProperties::setPlatform):
        (WebCore::WebCLContextProperties::setDeviceType):
        (WebCore::WebCLContextProperties::setShareGroup):
        (WebCore::WebCLContextProperties::computeContextProperties):
        * Modules/webcl/WebCLContextProperties.h:
        (WebCLContextProperties):
        * Modules/webcl/WebCLDevice.cpp:
        (WebCore::WebCLDevice::getInfo):
        * Modules/webcl/WebCLPlatform.cpp:
        (WebCore::getPlatforms):
        (WebCore):
        * Modules/webcl/WebCLPlatform.h:
        (WebCLPlatform):
        (WebCore):
        * bindings/js/JSWebCLCustom.cpp:
        (WebCore::JSWebCL::createContext):