예제 #1
0
void VSCSearch::AddAll()
{

	DeviceParam Param;
	int nId = 0;
	int insertRow = ui.tableWidget->rowCount();
    VDC_DEBUG( "[ONVIF]: Searched %d", insertRow);
	/* Loop to add device */
	for (int i = 0; i < insertRow; i ++)
	{
		if(ui.tableWidget->item(i, 0)->checkState() != Qt::Checked)
		{
			continue;
		}

		/* Update  from UI  */
		updateParamValue(ui.tableWidget->item(i, 1), Param.m_Conf.data.conf.Name);

		updateParamValue(ui.tableWidget->item(i, 1), Param.m_Conf.data.conf.IP);
		updateParamValue(ui.tableWidget->item(i, 2), Param.m_Conf.data.conf.Port);

		updateParamValue(ui.tableWidget->item(i, 6), Param.m_Conf.data.conf.OnvifAddress);
		
		Param.m_Conf.data.conf.UseProfileToken = 0;
		
		Param.m_Conf.data.conf.nSubType = VSC_SUB_DEVICE_ONVIF;

		nId = gFactory->AddDevice(Param);

		VDC_DEBUG( "%s  ID %d\n",__FUNCTION__, nId);
	
	}
	
	emit CameraTreeUpdated();
}
예제 #2
0
String InfoScreens::moveToNextValue() {
	String ret;
	paramStruct* param = getCurrent()->getCurrentEditParam();
	String id = param->id;
	//temp value
	ret = *paramValueMap[param->id].val;

	if (!paramEditValueMap.contains(id)) {
		if(delegatedMenuEvent) {
			if (delegatedMenuEvent(param, viewMode, InfoNextValue, "")) {
			}
			else {
				debugf("no more data");
			}
		}

		return ret;
	}

	paramDataValues* data =  paramEditValueMap[id];
	if (data == NULL) {
		debugf("data is null");
	}
	String* d = data->getNextData();
	if(delegatedMenuEvent) {
		if (delegatedMenuEvent(param, viewMode, InfoNextValue, *d)) {
			return "";
		}
	}
	updateParamValue(id, *d);
	return ret;
}
void NetShrVarInterface::updateParamCNVImpl(int param_index, CNVData data, CNVDataType type, unsigned int nDims, bool do_asyn_param_callbacks)
{
	if (nDims == 0)
	{
	    typename CNV2C<cnvType>::ctype val;
	    int status = CNVGetScalarDataValue (data, type, &val);
	    ERROR_CHECK("CNVGetScalarDataValue", status);
	    updateParamValue(param_index, val, do_asyn_param_callbacks);
        CNV2C<cnvType>::free(val);
	}
	else
	{
	    typename CNV2C<cnvType>::ctype* val;
	    size_t dimensions[10];
	    int status = CNVGetArrayDataDimensions(data, nDims, dimensions);
	    ERROR_CHECK("CNVGetArrayDataDimensions", status);
		size_t nElements = 1;
		for(unsigned i=0; i<nDims; ++i)
		{
		    nElements *= dimensions[i];
		}
		val = new typename CNV2C<cnvType>::ctype[nElements];
		status = CNVGetArrayDataValue(data, type, val, nElements);
	    ERROR_CHECK("CNVGetArrayDataValue", status);
	    updateParamArrayValue(param_index, val, nElements);
		delete[] val;
	}
}
예제 #4
0
//Not handling initial yet
paramStruct* InfoLine::addParam(String id, String text, bool editable, int maxLineSize)
{
	paramStruct* ret = new paramStruct();
//	getParent()->updateParamValue(id, text);
	if( text == "") {
	} else {
		updateParamValue(id, text);
	}

//	ret->text = text;
	ret->t.x = -1;
	ret->t.y = -1;
	ret->t.h = -1;
	ret->t.w = -1;

	ret->id = id;
	ret->editable = editable;
	ret->maxSize = maxLineSize * 8;
	params.add(ret);
	return ret;
}
예제 #5
0
void VSCCameraAdd::applyConfig()
{
	VDC_DEBUG( "%s  ID %d\n",__FUNCTION__, m_nId);
	/* Update m_Param from UI  */
	updateParamValue(ui.lineEditName, m_Param.m_Conf.data.conf.Name);

	updateParamValue(ui.lineEditIP, m_Param.m_Conf.data.conf.IP);
	updateParamValue(ui.lineEditPort, m_Param.m_Conf.data.conf.Port);
	updateParamValue(ui.lineEditUser, m_Param.m_Conf.data.conf.User);
	updateParamValue(ui.lineEditPassword, m_Param.m_Conf.data.conf.Password);


	updateParamValue(ui.lineEditRtspLoc, m_Param.m_Conf.data.conf.RtspLocation);
	//updateParamValue(ui.lineFileLoc, m_Param.m_Conf.data.conf.FileLocation);
	/* Update the File location */
	strcpy(m_Param.m_Conf.data.conf.FileLocation, ui.fileLoc->text().toStdString().c_str());
	updateParamValue(ui.lineOnvifAddr, m_Param.m_Conf.data.conf.OnvifAddress);
	updateParamValue(ui.lineEditProfileToken, m_Param.m_Conf.data.conf.OnvifProfileToken);
	updateParamValue(ui.lineEditProfileToken2, m_Param.m_Conf.data.conf.OnvifProfileToken2);
	m_Param.m_Conf.data.conf.nType = VSC_DEVICE_CAM;
	if (ui.radioButtonRtsp->isChecked() == true)
	{
	    m_Param.m_Conf.data.conf.nSubType = VSC_SUB_DEVICE_RTSP;
	}else if (ui.radioButtonOnvif->isChecked() == true)
	{
	    m_Param.m_Conf.data.conf.nSubType = VSC_SUB_DEVICE_ONVIF;
	}else if (ui.radioButtonFile->isChecked() == true)
	{
	    m_Param.m_Conf.data.conf.nSubType = VSC_SUB_DEVICE_FILE;
	}

	if (ui.checkBoxProfileToken->isChecked() == true)
	{
	    m_Param.m_Conf.data.conf.UseProfileToken = 1;
	}else
	{
	    m_Param.m_Conf.data.conf.UseProfileToken = 0;
	}

	/* HWAccel */
	if (ui.checkBoxHWAccel->isChecked() == true)
	{
	    m_Param.m_Conf.data.conf.HWAccel = 1;
	}else
	{
	    m_Param.m_Conf.data.conf.HWAccel = 0;
	}

	/* Mining */
	if (ui.checkBoxDataMining->isChecked() == true)
	{
	    m_Param.m_Conf.data.conf.Mining = 1;
	}else
	{
	    m_Param.m_Conf.data.conf.Mining = 0;
	}


	if (m_nId > 0)
	{
	    gFactory->DelDevice(m_nId);
	}
	VDC_DEBUG( "%s  Line %d\n",__FUNCTION__, __LINE__);
	/* m_nId <= 0 is Add Camera Device */
	m_nId = gFactory->AddDevice(m_Param);

	VDC_DEBUG( "%s  ID %d\n",__FUNCTION__, m_nId);
	//PreView();
	VDC_DEBUG( "%s  Line %d\n",__FUNCTION__, __LINE__);
	//emit CameraTreeUpdated();
}