Beispiel #1
0
AudioTrack::AudioTrack(TrackType t)
: Track(t)
{
	_processed = false;
	_haveData = false;
	_sendMetronome = false;
	_prefader = false;
	_efxPipe = new Pipeline();
	_recFile = 0;
	_channels = 0;
	_automationType = AUTO_OFF;
	setChannels(2);
	addController(new CtrlList(AC_VOLUME,"Volume", 0.001, 3.16 /* roughly 10 db */));
	addController(new CtrlList(AC_PAN, "Pan", -1.0, 1.0));
	addController(new CtrlList(AC_MUTE, "Mute", 0.0, 1.0, true /*dont show in Composer */));

	_totalOutChannels = MAX_CHANNELS;
	outBuffers = new float*[_totalOutChannels];
	for (int i = 0; i < _totalOutChannels; ++i)
		posix_memalign((void**) &outBuffers[i], 16, sizeof (float) * segmentSize);

	// This is only set by multi-channel syntis...
	_totalInChannels = 0;

	bufferPos = MAXINT;

	setVolume(1.0, true);
}
Beispiel #2
0
void AudioTrack::addPlugin(BasePlugin* plugin, int idx)/*{{{*/
{
	if(debugMsg)
    	qDebug("AudioTrack::addPlugin(%p, %d) \n", plugin, idx);
    if (!plugin)
    {
        BasePlugin* oldPlugin = (*_efxPipe)[idx];
        if (oldPlugin)
        {
            oldPlugin->setId(-1);
            oldPlugin->setTrack(0);

            uint32_t paramCount = oldPlugin->getParameterCount();
            for (uint32_t i = 0; i < paramCount; i++)
            {
                ParameterPort* paramPort = oldPlugin->getParameterPort(i);
                if (! paramPort || paramPort->type != PARAMETER_INPUT || (paramPort->hints & PARAMETER_IS_AUTOMABLE) == 0)
                    continue;

                int id = genACnum(idx, i);
                removeController(id);
            }
			_efxPipe->remove(idx);
        }
    }

    if (plugin)
    {
        idx = efxPipe()->addPlugin(plugin, idx);
        plugin->setId(idx);
        plugin->setTrack(this);

        uint32_t paramCount = plugin->getParameterCount();
        for (uint32_t i = 0; i < paramCount; i++)
        {
            ParameterPort* paramPort = plugin->getParameterPort(i);
            if (! paramPort || paramPort->type != PARAMETER_INPUT || (paramPort->hints & PARAMETER_IS_AUTOMABLE) == 0)
                continue;

            int id = genACnum(idx, i);

            CtrlValueType t = plugin->valueType();
            CtrlList* cl = new CtrlList(id);
            cl->setRange(paramPort->ranges.min, paramPort->ranges.max);
            cl->setName(plugin->getParameterName(i));
            cl->setPluginName(plugin->name());
            cl->setUnit(plugin->getParameterUnit(i));
            cl->setValueType(t);

            if (paramPort->hints & PARAMETER_IS_TOGGLED)
                cl->setMode(CtrlList::DISCRETE);
            else
                cl->setMode(CtrlList::INTERPOLATE);

            cl->setCurVal(plugin->getParameterValue(i));
            addController(cl);
        }
    }
}/*}}}*/
Beispiel #3
0
VirusTest::Suites::Vendors::RapidJson::RapidJson::RapidJson()
: VirusTest::Suite("RapidJSON")
{
  auto controller = std::make_shared<VirusTest::Controllers::Vendors::RapidJson>();
  controller->addExperiment(std::make_shared<VirusTest::Experiments::Vendors::RapidJson::Parse>());
  controller->addExperiment(std::make_shared<VirusTest::Experiments::Vendors::RapidJson::Write>());
  addController(controller);
}
Beispiel #4
0
void SipperMediaListener::_handleAcceptedController(int accSock)
{
   SipperMediaController controller;
   controller.listener = this;

   addController(accSock, &controller);
   controller.handleRequest(accSock);
   removeController(accSock);
}
Beispiel #5
0
void Song::restoreControllerStates( const QDomElement & element )
{
	QDomNode node = element.firstChild();
	while( !node.isNull() )
	{
		Controller * c = Controller::create( node.toElement(), this );
		Q_ASSERT( c != NULL );

		addController( c );

		node = node.nextSibling();
	}
}
Beispiel #6
0
void Song::restoreControllerStates( const QDomElement & element )
{
	QDomNode node = element.firstChild();
	while( !node.isNull() && !isCancelled() )
	{
		Controller * c = Controller::create( node.toElement(), this );
		if (c) {addController(c);}
		else
		{
			// Fix indices to ensure correct connections
			m_controllers.append(Controller::create(
				Controller::DummyController, this));
		}

		node = node.nextSibling();
	}
}
ControllerRackView::ControllerRackView( ) :
	QWidget()
{
	setMinimumWidth( 250 );
	setMaximumWidth( 250 );
	resize( 250, 160 );

	setWindowIcon( embed::getIconPixmap( "controller" ) );
	setWindowTitle( tr( "Controller Rack" ) );

	m_scrollArea = new QScrollArea( this );
	m_scrollArea->setVerticalScrollBarPolicy( Qt::ScrollBarAlwaysOn );
	m_scrollArea->setHorizontalScrollBarPolicy( Qt::ScrollBarAlwaysOff );
	m_scrollArea->setPalette( QApplication::palette( m_scrollArea ) );
	m_scrollArea->setMinimumHeight( 64 );

	m_addButton = new QPushButton( this );
	m_addButton->setText( tr( "Add" ) );

	QWidget * w = new QWidget();
	m_scrollArea->setWidget( w );

	connect( m_addButton, SIGNAL( clicked() ),
			this, SLOT( addController() ) );

	connect( engine::getSong(), SIGNAL( dataChanged() ),
			this, SLOT( update() ) );

	QVBoxLayout * layout = new QVBoxLayout();
	layout->addWidget( m_scrollArea );
	layout->addWidget( m_addButton );
	this->setLayout( layout );

	QMdiSubWindow * subWin =
			engine::mainWindow()->workspace()->addSubWindow( this );

	// No maximize button
	Qt::WindowFlags flags = subWin->windowFlags();
	flags &= ~Qt::WindowMaximizeButtonHint;
	subWin->setWindowFlags( flags );
	
	parentWidget()->setAttribute( Qt::WA_DeleteOnClose, false );
	parentWidget()->move( 880, 310 );
}
Beispiel #8
0
void song::restoreControllerStates( const QDomElement & _this )
{
	QDomNode node = _this.firstChild();
	while( !node.isNull() )
	{
		Controller * c = Controller::create( node.toElement(), this );
		Q_ASSERT( c != NULL );

		/* For PeakController, addController() was called in
		 * PeakControllerEffect::PeakControllerEffect().
		 * This line removes the previously added controller for PeakController
		 * without affecting the order of controllers in Controller Rack
		 */
		engine::getSong()->removeController( c );
		addController( c );

		node = node.nextSibling();
	}
}
Beispiel #9
0
PlexyDesktopView::PlexyDesktopView(QGraphicsScene *parent_scene, QWidget *parent) :
    PlexyDesk::AbstractDesktopView(parent_scene, parent),
    d(new PrivatePlexyDesktopView)
{
    d->mThemeLoader = new PlexyDesk::ThemepackLoader("default", this);
    d->mHasSession = false;

    QString sessionData = d->mThemeLoader->loadSessionFromDisk();

    //add the background controller
    setBackgroundController(d->mThemeLoader->desktopBackgroundController());

    if (sessionData.isNull() || sessionData.isEmpty()) {
        QStringList widgets = d->mThemeLoader->desktopWidgets();

        Q_FOREACH(const QString &widget, widgets) {
            addController(widget);
            QSharedPointer<PlexyDesk::ControllerInterface> controller = controllerByName(widget);
            if (controller.data())
                controller->firstRun();
        }
 CreateComplexBrushToolController3D::CreateComplexBrushToolController3D(CreateComplexBrushTool* tool) :
 m_tool(tool) {
     assert(m_tool != NULL);
     addController(new DrawFacePart(m_tool));
     addController(new DuplicateFacePart(m_tool));
 }
Beispiel #11
0
void MVControlManager::createControllers()
{
    addController(new MVControllerFloat(CTRN_mainVolume, MVPlayer::mainVolume,0.0f, 0.1f));
    for(int i=0;i<NB_OSC;i++)
    {
        addController(new MVControllerFloat(QString(CTRN_osc1midiCC_pan).arg(i), Globals::presetManager->getCurrentPreset()->getOscData(i)->pan, 0.0f, 1.0f));
        addController(new MVControllerFloat(QString(CTRN_osc1midiCC_amp).arg(i), Globals::presetManager->getCurrentPreset()->getOscData(i)->amp, 0.0f, 1.0f));
        addController(new MVControllerFreqRatio(QString(CTRN_osc1midiCC_freqratio).arg(i), Globals::presetManager->getCurrentPreset()->getOscData(i)->freqratio, -48.0f, 48.0f));
        addController(new MVControllerDetune(QString(CTRN_osc1midiCC_detune).arg(i), Globals::presetManager->getCurrentPreset()->getOscData(i)->detune, -1.0f, 1.0f));
        addController(new MVControllerFloat(QString(CTRN_osc1midiCC_random).arg(i), Globals::presetManager->getCurrentPreset()->getOscData(i)->randomize, 0.0f, 0.2f));
        addController(new MVControllerFloat(QString(CTRN_osc1midiCC_iMod).arg(i), Globals::presetManager->getCurrentPreset()->getOscData(i)->iMod,0.0f, 20.0f));
        addController(new MVControllerFloat(QString(CTRN_osc1midiCC_tremAmp).arg(i), Globals::presetManager->getCurrentPreset()->getTremData(i)->amp, 0.0f, 1.0f));
        addController(new MVControllerFloat(QString(CTRN_osc1midiCC_tremFreq).arg(i), Globals::presetManager->getCurrentPreset()->getTremData(i)->freq, 1.0f, 10.0f));
        addController(new MVControllerInt(QString(CTRN_osc1midiCC_tremShape).arg(i), Globals::presetManager->getCurrentPreset()->getTremData(i)->shape, 0, 3));
        addController(new MVControllerFloat(QString(CTRN_osc1midiCC_vibAmp).arg(i), Globals::presetManager->getCurrentPreset()->getVibData(i)->amp, 0.0f, 1.0f));
        addController(new MVControllerFloat(QString(CTRN_osc1midiCC_vibFreq).arg(i), Globals::presetManager->getCurrentPreset()->getVibData(i)->freq, 1.0f, 10.0f));
        addController(new MVControllerInt(QString(CTRN_osc1midiCC_vibShape).arg(i), Globals::presetManager->getCurrentPreset()->getVibData(i)->shape, 0, 3));

        for (int j=0;j<NB_ENV_PTS;j++)
        {
            if(j>0)
            {
                addController(new MVControllerEnvFrame(QString(CTRN_envAmp12midiCC_frame).arg(i).arg(j),
                                                       Globals::presetManager->getCurrentPreset()->getOscAmpEnvData(i)->points[j].frame));
                addController(new MVControllerEnvFrame(QString(CTRN_envFreq12midiCC_frame).arg(i).arg(j),
                                                       Globals::presetManager->getCurrentPreset()->getOscFreqEnvData(i)->points[j].frame));
            }
            if(j<NB_ENV_PTS-1)
            {
                addController(new MVControllerFloat(QString(CTRN_envAmp12midiCC_value).arg(i).arg(j),
                                                    Globals::presetManager->getCurrentPreset()->getOscAmpEnvData(i)->points[j].value, 0.0f, 1.0f));
                addController(new MVControllerFreqValue(QString(CTRN_envFreq12midiCC_value).arg(i).arg(j),
                                                        Globals::presetManager->getCurrentPreset()->getOscFreqEnvData(i)->points[j].value, -48.0f, 48.0f));
            }
        }
        addController(new MVControllerBool(QString(CTRN_envAmp1loopmidiCC).arg(i), Globals::presetManager->getCurrentPreset()->getOscAmpEnvData(i)->loop));
        addController(new MVControllerBool(QString(CTRN_envFreq1loopmidiCC).arg(i), Globals::presetManager->getCurrentPreset()->getOscFreqEnvData(i)->loop));
        addController(new MVControllerBool(QString(CTRN_envFreq1usedmidiCC).arg(i), Globals::presetManager->getCurrentPreset()->getOscFreqEnvData(i)->used));
    }
    addController(new MVControllerBool(QString(CTRN_filterUsedmidiCC), Globals::presetManager->getCurrentPreset()->getFilterData()->used));
    addController(new MVControllerInt(QString(CTRN_filterTypemidiCC), Globals::presetManager->getCurrentPreset()->getFilterData()->type, 0, 3));
    addController(new MVControllerFreqRatio(QString(CTRN_filterFRatiomidiCC), Globals::presetManager->getCurrentPreset()->getFilterData()->fRatio, -48.0f, 48.0f));
    addController(new MVControllerFloat(QString(CTRN_filterQmidiCC), Globals::presetManager->getCurrentPreset()->getFilterData()->q, 0.1f, 10.0f));
    for (int i=0;i<NB_ENV_PTS;i++)
    {
        if(i>0)
            addController(new MVControllerEnvFrame(QString(CTRN_filterFreqEnv1framemidiCC).arg(i),
                                               Globals::presetManager->getCurrentPreset()->getFilterEnvData()->points[i].frame));
        if(i<NB_ENV_PTS-1)
            addController(new MVControllerFloat(QString(CTRN_filterFreqEnv1valuemidiCC).arg(i),
                                                Globals::presetManager->getCurrentPreset()->getFilterEnvData()->points[i].value, 0.0f, 1.0f));
    }
    addController(new MVControllerBool(QString(CTRN_filterFreqEnvLoopmidiCC), Globals::presetManager->getCurrentPreset()->getFilterEnvData()->loop));
    addController(new MVControllerBool(QString(CTRN_filterFreqEnvUsedmidiCC), Globals::presetManager->getCurrentPreset()->getFilterEnvData()->used));
    addController(new MVControllerBool(QString(CTRN_filterFreqEnvAbsmidiCC), Globals::presetManager->getCurrentPreset()->getFilterEnvData()->absolute));
}
 ClipToolController3D::ClipToolController3D(ClipTool* tool) :
 ClipToolController(tool) {
     addController(new AddClipPointPart(new Callback3D(tool)));
     addController(new MoveClipPointPart(new Callback3D(tool)));
 }
Beispiel #13
0
void EmittersPanel::createSmoke() {
    EmitterController *controller = addController("Smoke");
    controller->setType(EmitterController::TYPE_SMOKE);
}
Beispiel #14
0
void EmittersPanel::createController() {
    EmitterController *controller = addController("Custom");
    controller->setType(EmitterController::TYPE_CUSTOM);
}
Beispiel #15
0
void EmittersPanel::createWater() {
    EmitterController *controller = addController("Water");
    controller->setType(EmitterController::TYPE_WATER);
}
Beispiel #16
0
void Lv2Plugin::addController(MidiSource &source, unsigned int cc, const char *symbol) {
    Lv2ControlPort *port = getPort(symbol);
    addController(source, cc, symbol, port->minimum, port->maximum);
}
Beispiel #17
0
void EmittersPanel::createFire() {
    EmitterController *controller = addController("Fire");
    controller->setType(EmitterController::TYPE_FIRE);
}