void RegisterService::subscribeToPushInitiator(const User& user, const QString& token) { // Keep track of the current user's information so it can be stored later // on a success m_currentUser = user; const Configuration config = m_configurationService.configuration(); QUrl url(config.pushInitiatorUrl() + "/subscribe"); url.addQueryItem("appid",config.providerApplicationId()); url.addQueryItem("address",token); url.addQueryItem("osversion",deviceVersion()); url.addQueryItem("model",deviceModel()); url.addQueryItem("username",user.userId()); url.addQueryItem("password",user.password()); if (config.usingPublicPushProxyGateway()) { url.addQueryItem("type","public"); } else { url.addQueryItem("type","bds"); } qDebug() << "URL: " << url; m_reply = m_accessManager.get(QNetworkRequest(url)); // Connect to the reply finished signal. checkConnectResult(connect(m_reply, SIGNAL(finished()), this, SLOT(httpFinished()))); }
/* * This function read the OpenCL platdorm and device versions * (using clGetxxxInfo API) and stores it in the ocl structure. * Later it will enable us to support both OpenCL 1.2 and 2.0 platforms and devices * in the same program. */ int GetPlatformAndDeviceVersion(cl_platform_id platformId, ocl_args_d_t *ocl) { cl_int err = CL_SUCCESS; // Read the platform's version string length (param_value is NULL). // The value returned in stringLength size_t stringLength = 0; err = clGetPlatformInfo(platformId, CL_PLATFORM_VERSION, 0, NULL, &stringLength); if (CL_SUCCESS != err) { LogError("Error: clGetPlatformInfo() to get CL_PLATFORM_VERSION length returned '%s'.\n", TranslateOpenCLError(err)); return err; } // Now, that we know the platform's version string length, we can allocate enough space before read it std::vector<char> platformVersion(stringLength); // Read the platform's version string // The read value returned in platformVersion err = clGetPlatformInfo(platformId, CL_PLATFORM_VERSION, stringLength, &platformVersion[0], NULL); if (CL_SUCCESS != err) { LogError("Error: clGetplatform_ids() to get CL_PLATFORM_VERSION returned %s.\n", TranslateOpenCLError(err)); return err; } if (strstr(&platformVersion[0], "OpenCL 2.0") != NULL) { ocl->platformVersion = OPENCL_VERSION_2_0; } // Read the device's version string length (param_value is NULL). err = clGetDeviceInfo(ocl->device, CL_DEVICE_VERSION, 0, NULL, &stringLength); if (CL_SUCCESS != err) { LogError("Error: clGetDeviceInfo() to get CL_DEVICE_VERSION length returned '%s'.\n", TranslateOpenCLError(err)); return err; } // Now, that we know the device's version string length, we can allocate enough space before read it std::vector<char> deviceVersion(stringLength); // Read the device's version string // The read value returned in deviceVersion err = clGetDeviceInfo(ocl->device, CL_DEVICE_VERSION, stringLength, &deviceVersion[0], NULL); if (CL_SUCCESS != err) { LogError("Error: clGetDeviceInfo() to get CL_DEVICE_VERSION returned %s.\n", TranslateOpenCLError(err)); return err; } if (strstr(&deviceVersion[0], "OpenCL 2.0") != NULL) { ocl->deviceVersion = OPENCL_VERSION_2_0; } // Read the device's OpenCL C version string length (param_value is NULL). err = clGetDeviceInfo(ocl->device, CL_DEVICE_OPENCL_C_VERSION, 0, NULL, &stringLength); if (CL_SUCCESS != err) { LogError("Error: clGetDeviceInfo() to get CL_DEVICE_OPENCL_C_VERSION length returned '%s'.\n", TranslateOpenCLError(err)); return err; } // Now, that we know the device's OpenCL C version string length, we can allocate enough space before read it std::vector<char> compilerVersion(stringLength); // Read the device's OpenCL C version string // The read value returned in compilerVersion err = clGetDeviceInfo(ocl->device, CL_DEVICE_OPENCL_C_VERSION, stringLength, &compilerVersion[0], NULL); if (CL_SUCCESS != err) { LogError("Error: clGetDeviceInfo() to get CL_DEVICE_OPENCL_C_VERSION returned %s.\n", TranslateOpenCLError(err)); return err; } else if (strstr(&compilerVersion[0], "OpenCL C 2.0") != NULL) { ocl->compilerVersion = OPENCL_VERSION_2_0; } return err; }