Example #1
0
int FormSetup::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
    _id = QWidget::qt_metacall(_c, _id, _a);
    if (_id < 0)
        return _id;
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: bufferSizeUpdated((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2])),(*reinterpret_cast< int(*)>(_a[3]))); break;
        case 1: ApplyB(); break;
        case 2: playSB(); break;
        case 3: setVol((*reinterpret_cast< int(*)>(_a[1]))); break;
        case 4: bBset(); break;
        case 5: userRateB(); break;
        case 6: userBitsB(); break;
        case 7: userChnB(); break;
        case 8: _buffQB(); break;
        case 9: _titleHB(); break;
        case 10: updateBufferSize((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2])),(*reinterpret_cast< int(*)>(_a[3]))); break;
        case 11: bufferSize((*reinterpret_cast< QString(*)>(_a[1])),(*reinterpret_cast< QString(*)>(_a[2])),(*reinterpret_cast< int(*)>(_a[3]))); break;
        default: ;
        }
        _id -= 12;
    }
    return _id;
}
 void Plotter2DDisplay::onInitialize()
 {
   static int count = 0;
   rviz::UniformStringStream ss;
   ss << "Plotter2DDisplayObject" << count++;
   overlay_.reset(new OverlayObject(ss.str()));
   updateBufferSize();
   onEnable();
   updateShowValue();
   updateWidth();
   updateHeight();
   updateLeft();
   updateTop();
   updateFGColor();
   updateBGColor();
   updateFGAlpha();
   updateBGAlpha();
   updateLineWidth();
   updateUpdateInterval();
   updateShowBorder();
   updateAutoColorChange();
   updateMaxColor();
   updateShowCaption();
   updateTextSize();
   updateAutoScale();
   updateMinValue();
   updateMaxValue();
   overlay_->updateTextureSize(width_property_->getInt(),
                               height_property_->getInt() + caption_offset_);
 }
	/// \brief Sets the size of the oscilloscopes sample buffer.
	/// \param size The buffer size that should be met (S).
	/// \return The buffer size that has been set.
	unsigned long int Control::setBufferSize(unsigned long int size) {
		if (!device->isConnected())
			return 0;
		
		updateBufferSize(size);
		
		setTriggerPosition(triggerPosition);
		setSampleRate(samplerateMax / samplerateDivider);
		setTriggerSlope(triggerSlope);
		
		return bufferSize;
	}
Example #4
0
//-----------------------------------------------------------------------------
void GuiEditor::valueChanged (CControl* control)
{
	//effect->setParameterAutomated (control->getTag (), control->getValue ());

	float value;
	int ival;
	const char* text;
	std::string result;
	char* tempt;

	switch (control->getTag())
	{

		case kBufferSize:
			((COptionMenu*)(control))->getCurrent(tempt);
			ival = ((COptionMenu*)(control))->getIndex(tempt);
			updateBufferSize(ival);
			break;
	
		case kGain:
			value = control->getValue();
			result = floatToString(value*maxGain);
			gainDisplay->setText(result.c_str());
			updateGain(value*maxGain);
			break;

		case kGainText:
			text = ((CTextEdit*)(control))->getText();
			value = charToFloat(text);
			gainFader->setValue(value/(float)maxGain);
			updateGain(value);
			break;

		case kXScale:
			value = control->getValue();
			result = floatToString(value*maxXScale);
			xScaleDisplay->setText(result.c_str());
			updateXScale(value*maxXScale);
			break;

		case kXScaleText:
			text = ((CTextEdit*)(control))->getText();
			value = charToFloat(text);
			xScaleFader->setValue(value/(float)maxXScale);
			updateXScale(value);
			break;

		case kYScale:
			value = control->getValue();
			result = floatToString(value*maxYScale);
			yScaleDisplay->setText(result.c_str());
			updateYScale(value*maxYScale);
			break;

		case kYScaleText:
			text = ((CTextEdit*)(control))->getText();
			value = charToFloat(text);
			yScaleFader->setValue(value/(float)maxYScale);
			updateYScale(value);
			break;

		case kResponse:
			value = control->getValue();
			result = floatToString(value);
			responseDisplay->setText(result.c_str());
			updateResponse(value);
			break;

		case kResponseText:
			text = ((CTextEdit*)(control))->getText();
			value = charToFloat(text);
			responseFader->setValue(value);
			updateResponse(value);
			break;

		case kBands:
			ival = (int)(control->getValue()*maxBands);
			result = intToString(ival);
			bandsDisplay->setText(result.c_str());
			bandsFader->setValue(((float)ival)/(float)maxBands);
			updateBands(ival);
			break;

		case kBandsText:
			text = ((CTextEdit*)(control))->getText();
			ival = charToInt(text);
			bandsFader->setValue((float)value/(float)maxBands);
			updateBands(ival);
			break;

		case kAmpScale:
			((COptionMenu*)(control))->getCurrent(tempt);
			ival = ((COptionMenu*)(control))->getIndex(tempt);
			updateAmpScale(ival);
			break;

		case kType:
			((COptionMenu*)(control))->getCurrent(tempt);
			ival = ((COptionMenu*)(control))->getIndex(tempt);
			updateType(ival);
			break;

		case kDisplay:
			((COptionMenu*)(control))->getCurrent(tempt);
			ival = ((COptionMenu*)(control))->getIndex(tempt);
			updateDisplayt(ival);
			break;

		case kResampling:
			((COptionMenu*)(control))->getCurrent(tempt);
			ival = ((COptionMenu*)(control))->getIndex(tempt);
			updateResampling(ival);
			break;

		case kFreqScale:
			((COptionMenu*)(control))->getCurrent(tempt);
			ival = ((COptionMenu*)(control))->getIndex(tempt);
			updateFreqScale(ival);
			break;



		case kAddress:
			text = ((CTextEdit*)(control))->getText();
			updateAddress(text);
			break;

		case kPort:
			text = ((CTextEdit*)(control))->getText();
			ival = charToInt(text);
			updatePort(ival);
			break;

		case kHost:
			text = ((CTextEdit*)(control))->getText();
			updateHost(text);
			break;
	}

}
Example #5
0
bool SDRdaemonBufferOld::readMeta(char *array, uint32_t length)
{
	assert(length >= sizeof(MetaData) + 8);
	MetaData *metaData = (MetaData *) array;

	if (m_crc64.calculate_crc((uint8_t *)array, sizeof(MetaData) - 8) == metaData->m_crc)
	{
		// sync condition:
		if (m_currentMeta.m_blockSize > 0)
		{
			uint32_t nbBlocks = m_currentMeta.m_nbBytes / m_currentMeta.m_blockSize;
			m_syncLock = nbBlocks + (m_lz4 ? 2 : 1) == m_nbBlocks;
			//qDebug("SDRdaemonBuffer::readMeta: m_nbBlocks: %d:%d %s", nbBlocks, m_nbBlocks, (m_syncLock ? "locked" : "unlocked"));
		}
		else
		{
			m_syncLock = false;
		}

		memcpy((void *) &m_dataCRC, (const void *) &array[sizeof(MetaData)], 8);
		m_nbBlocks = 0;
		m_inCount = 0;

		if (!m_lz4 && !(m_currentMeta == *metaData))
		{
			std::cerr << "SDRdaemonBuffer::readMeta: ";
			printMeta(metaData);
		}

		m_currentMeta = *metaData;

		// sanity checks
		if (metaData->m_blockSize == m_udpPayloadSize) // sent blocksize matches given blocksize
		{
			m_sampleBytes = metaData->m_sampleBytes & 0x0F;
			uint32_t frameSize = m_iqSampleSize * metaData->m_nbSamples * metaData->m_nbBlocks;
			int sampleRate = metaData->m_sampleRate;

			if (m_autoFollowRate)
			{
				if (sampleRate != m_sampleRateStream)
				{
					m_sampleRateStream = sampleRate;
				}
				else
				{
					sampleRate = m_sampleRate;
				}

				sampleRate += sampleRate * m_skewRate;
				sampleRate = (sampleRate / m_rateDivider) * m_rateDivider;
			}
			else
			{
				m_sampleRateStream = sampleRate;
			}

			if (metaData->m_sampleBytes & 0x10)
			{
				m_lz4 = true;
				m_lz4InSize = metaData->m_nbBytes; // compressed input size
				m_lz4InCount = 0;

				if (frameSize != m_frameSize)
				{
					updateLZ4Sizes(frameSize);
				}
			}
			else
			{
				m_lz4 = false;
			}

			if (sampleRate != m_sampleRate)
			{
				updateBufferSize(sampleRate);
			}

			m_sampleRate = sampleRate;
			m_frameSize = frameSize;
			m_sync = true;
		}
		else
		{
			m_sync = false;
		}

		return m_sync;
	}
	else
	{
		return false;
	}
}
 Plotter2DDisplay::Plotter2DDisplay()
   : rviz::Display(), min_value_(0.0), max_value_(0.0)
 {
   update_topic_property_ = new rviz::RosTopicProperty(
     "Topic", "",
     ros::message_traits::datatype<std_msgs::Float32>(),
     "std_msgs::Float32 topic to subscribe to.",
     this, SLOT(updateTopic()));
   show_value_property_ = new rviz::BoolProperty(
     "Show Value", true,
     "Show value on plotter",
     this, SLOT(updateShowValue()));
   buffer_length_property_ = new rviz::IntProperty(
     "Buffer length", 100,
     ros::message_traits::datatype<std_msgs::Float32>(),
     this, SLOT(updateBufferSize()));
   width_property_ = new rviz::IntProperty("width", 128,
                                           "width of the plotter window",
                                           this, SLOT(updateWidth()));
   width_property_->setMin(1);
   width_property_->setMax(2000);
   height_property_ = new rviz::IntProperty("height", 128,
                                            "height of the plotter window",
                                            this, SLOT(updateHeight()));
   height_property_->setMin(1);
   height_property_->setMax(2000);
   left_property_ = new rviz::IntProperty("left", 128,
                                          "left of the plotter window",
                                          this, SLOT(updateLeft()));
   left_property_->setMin(0);
   top_property_ = new rviz::IntProperty("top", 128,
                                         "top of the plotter window",
                                         this, SLOT(updateTop()));
   top_property_->setMin(0);
   auto_scale_property_ = new rviz::BoolProperty(
     "auto scale", true,
     "enable auto scale",
     this, SLOT(updateAutoScale()));
   max_value_property_ = new rviz::FloatProperty(
     "max value", 1.0,
     "max value, used only if auto scale is disabled",
     this, SLOT(updateMaxValue()));
   min_value_property_ = new rviz::FloatProperty(
     "min value", -1.0,
     "min value, used only if auto scale is disabled",
     this, SLOT(updateMinValue()));
   fg_color_property_ = new rviz::ColorProperty(
     "foreground color", QColor(25, 255, 240),
     "color to draw line",
     this, SLOT(updateFGColor()));
   fg_alpha_property_ = new rviz::FloatProperty(
     "foreground alpha", 0.7,
     "alpha belnding value for foreground",
     this, SLOT(updateFGAlpha()));
   fg_alpha_property_->setMin(0);
   fg_alpha_property_->setMax(1.0);
   bg_color_property_ = new rviz::ColorProperty(
     "background color", QColor(0, 0, 0),
     "background color",
     this, SLOT(updateBGColor()));
   bg_alpha_property_ = new rviz::FloatProperty(
     "backround alpha", 0.0,
     "alpha belnding value for background",
     this, SLOT(updateBGAlpha()));
   bg_alpha_property_->setMin(0);
   bg_alpha_property_->setMax(1.0);
   line_width_property_ = new rviz::IntProperty("linewidth", 1,
                                                "linewidth of the plot",
                                                this, SLOT(updateLineWidth()));
   line_width_property_->setMin(1);
   line_width_property_->setMax(1000);
   show_border_property_ = new rviz::BoolProperty(
     "border", true,
     "show border or not",
     this, SLOT(updateShowBorder()));
   text_size_property_ = new rviz::IntProperty("text size", 12,
                                               "text size of the caption",
                                               this, SLOT(updateTextSize()));
   text_size_property_->setMin(1);
   text_size_property_->setMax(1000);
   show_caption_property_ = new rviz::BoolProperty(
     "caption", true,
     "show caption or not",
     this, SLOT(updateShowCaption()));
   update_interval_property_ = new rviz::FloatProperty(
     "update interval", 0.04,
     "update interval of the plotter",
     this, SLOT(updateUpdateInterval()));
   update_interval_property_->setMin(0.0);
   update_interval_property_->setMax(100);
   auto_color_change_property_
     = new rviz::BoolProperty("auto color change",
                              false,
                              "change the color automatically",
                              this, SLOT(updateAutoColorChange()));
   max_color_property_
     = new rviz::ColorProperty(
       "max color",
       QColor(255, 0, 0),
       "only used if auto color change is set to True.",
       this, SLOT(updateMaxColor()));
 }