LADSPAPluginInstance::LADSPAPluginInstance(PluginFactory *factory,
        InstrumentId instrument,
        QString identifier,
        int position,
        unsigned long sampleRate,
        size_t blockSize,
        sample_t **inputBuffers,
        sample_t **outputBuffers,
        const LADSPA_Descriptor* descriptor) :
        RunnablePluginInstance(factory, identifier),
        m_instrument(instrument),
        m_position(position),
        m_instanceCount(0),
        m_descriptor(descriptor),
        m_blockSize(blockSize),
        m_inputBuffers(inputBuffers),
        m_outputBuffers(outputBuffers),
        m_ownBuffers(false),
        m_sampleRate(sampleRate),
        m_latencyPort(0),
        m_run(false),
        m_bypassed(false)
{
    init();

    instantiate(sampleRate);
    if (isOK()) {
        connectPorts();
        activate();
    }
}
bool yarp::dev::OpenNI2DeviceDriverClient::open(yarp::os::Searchable& config){
    string localPortPrefix,remotePortPrefix;
    inUserSkeletonPort = outPort = NULL;
    
    skeletonData = new OpenNI2SkeletonData();
    
    if(config.check("localName")) localPortPrefix = config.find("localName").asString();
    else {
        printf("\t- Error: localName element not found in PolyDriver.\n");
        return false;
    }
    if(config.check("remoteName")) remotePortPrefix = config.find("remoteName").asString();
    else {
        printf("\t- Error: remoteName element not found in PolyDriver.\n");
        return false;
    }
    string remotePortIn = remotePortPrefix+":i";
    if(!NetworkBase::exists(remotePortIn.c_str())){
        printf("\t- Error: remote port not found. (%s)\n\t  Check if OpenNI2DeviceDriverServer is running.\n",remotePortIn.c_str());
        return false;
    }
    
    if(!connectPorts(remotePortPrefix,localPortPrefix)) {
        printf("\t- Error: Could not connect or create ports.\n");
        return false;
    }
    
    inUserSkeletonPort->useCallback(*this);
    inDepthFramePort->useCallback(*this);
    inImageFramePort->useCallback(*this);
    
    return true;
}
Exemple #3
0
bool clsYarp::init_yarp_2d(int cameraSection,int cameraPosition)
{
	
	initYarp();
	if(!checkYarp()) return false;
	
	char tracking_name[50];
	sprintf(tracking_name, "/2D_tracking/%d/%d",cameraSection,cameraPosition);

	port.open(tracking_name);
	
	connectPorts();
	return true;
}
Exemple #4
0
/**
 * Start the capture and playback.
 */
void
JackLayer::startStream()
{
    {
        std::lock_guard<std::mutex> lock(mutex_);
        if (status_ != Status::Idle)
            return;
        status_ = Status::Started;
    }

    dcblocker_.reset();
    const auto hardwareFormat = AudioFormat(playbackBuffer_.getSampleRate(), out_ports_.size());
    hardwareFormatAvailable(hardwareFormat);

    if (jack_activate(playbackClient_) or jack_activate(captureClient_)) {
        RING_ERR("Could not activate JACK client");
        return;
    }
    ringbuffer_thread_ = std::thread(&JackLayer::ringbuffer_worker, this);

    connectPorts(playbackClient_, JackPortIsInput, out_ports_);
    connectPorts(captureClient_, JackPortIsOutput, in_ports_);
}
Exemple #5
0
bool clsYarp::initYarp3Dsend()
{
	initYarp();
	
	if(!checkYarp()) return false;
	
	port.open(YARPPORT_2DPTS_RECVR); // RECEIVE
	points3DOutPort.open(YARPPORT_3DPTS_SEND);
	
	connectPorts();
	
	yarp::os::Network::connect(YARPPORT_3DPTS_SEND,YARPPORT_3DPTS_RECVR,PROTOCOL);
	
	return true;
}
Exemple #6
0
// Connection primitive.
bool qjackctlConnect::connectPortsEx (
	qjackctlPortItem *pOPort, qjackctlPortItem *pIPort )
{
	if (pOPort->findConnectPtr(pIPort) != NULL)
		return false;
	
	emit connecting(pOPort, pIPort);

	if (!connectPorts(pOPort, pIPort))
		return false;

	pOPort->addConnect(pIPort);
	pIPort->addConnect(pOPort);
	return true;
}
int Private_Impl_Still::initialize() {
    if ( _isInitialized ) return 0;
    if ( createCamera() ) {
        cout << API_NAME << ": Failed to create camera component.\n";
        destroyCamera();
        return -1;
    } else if ( createEncoder() ) {
        cout << API_NAME << ": Failed to create encoder component.\n";
        destroyCamera();
        return -1;
    } else {
        camera_still_port	= camera->output[MMAL_CAMERA_CAPTURE_PORT];
        encoder_input_port  = encoder->input[0];
        encoder_output_port = encoder->output[0];
        if ( connectPorts ( camera_still_port, encoder_input_port, &encoder_connection ) != MMAL_SUCCESS ) {
            cout << "ERROR: Could not connect encoder ports!\n";
            return -1;
        }
    }
    _isInitialized=true;
    return 0;
}
LADSPAPluginInstance::LADSPAPluginInstance(PluginFactory *factory,
        InstrumentId instrument,
        QString identifier,
        int position,
        unsigned long sampleRate,
        size_t blockSize,
        int idealChannelCount,
        const LADSPA_Descriptor* descriptor) :
        RunnablePluginInstance(factory, identifier),
        m_instrument(instrument),
        m_position(position),
        m_instanceCount(0),
        m_descriptor(descriptor),
        m_blockSize(blockSize),
        m_sampleRate(sampleRate),
        m_latencyPort(0),
        m_run(false),
        m_bypassed(false)
{
    init(idealChannelCount);

    m_inputBuffers = new sample_t * [m_instanceCount * m_audioPortsIn.size()];
    m_outputBuffers = new sample_t * [m_instanceCount * m_audioPortsOut.size()];

    for (size_t i = 0; i < m_instanceCount * m_audioPortsIn.size(); ++i) {
        m_inputBuffers[i] = new sample_t[blockSize];
    }
    for (size_t i = 0; i < m_instanceCount * m_audioPortsOut.size(); ++i) {
        m_outputBuffers[i] = new sample_t[blockSize];
    }

    m_ownBuffers = true;

    instantiate(sampleRate);
    if (isOK()) {
        connectPorts();
        activate();
    }
}
void
LADSPAPluginInstance::setIdealChannelCount(size_t channels)
{
    if (m_audioPortsIn.size() != 1 || channels == m_instanceCount) {
        silence();
        return ;
    }

    if (isOK()) {
        deactivate();
    }

    //!!! don't we need to reallocate inputBuffers and outputBuffers?

    cleanup();
    m_instanceCount = channels;
    instantiate(m_sampleRate);
    if (isOK()) {
        connectPorts();
        activate();
    }
}
Exemple #10
0
  int LadspaActivate ( const char * pcPluginLabel )
  {
	assert(pcPluginLabel != NULL);
	if (pluginLoaded)
	  {
#ifdef DEBUG
	    printf("DEBUG: method 'LadspaActivate' received string \"%s\"\n", pcPluginLabel);
#endif
	    if (pluginActivated)
	      {
		psDescriptor->cleanup(pPlugin);
		if (verbose) printf("LADSPA: deactivating current plugin...\n");
		pluginActivated = false;
	      }
	    for (int i=0;; i++)
		  {
			psDescriptor = pfDescriptorFunction(i);
			if (psDescriptor == NULL)
			  {
				printf("LADSPA error: unable to find label \"%s\" in plugin.\n", pcPluginLabel);
				return 0;
			  }
			if (strcmp(psDescriptor->Label, pcPluginLabel) == 0)
			  {
				if (verbose) printf("LADSPA: activating plugin \"%s\"\n", pcPluginLabel);
				pPlugin = psDescriptor->instantiate(psDescriptor, srate);
				connectPorts();
				pluginActivated = true;
				return 1;
			  }
		  }
	  }
	else
	  printf ("LADSPA error: no plugin loaded yet!\n");
	return 0;
  }
bool yarp::dev::KinectDeviceDriverClient::open(yarp::os::Searchable& config){
	string localPortPrefix,remotePortPrefix;
	_inUserSkeletonPort = _outPort = NULL;

	_skeletonData = new KinectSkeletonData();

	if(config.check("localPortPrefix")) localPortPrefix = config.find("localPortPrefix").asString();
	else {
		printf("\t- Error: localPortPrefix element not found in PolyDriver.\n");
		return false;
	}
	if(config.check("remotePortPrefix")) remotePortPrefix = config.find("remotePortPrefix").asString();
	else {
		printf("\t- Error: remotePortPrefix element not found in PolyDriver.\n");
		return false;
	}
	Network yarp;
	string remotePortIn = remotePortPrefix+":i";
	if(!yarp.exists(remotePortIn.c_str())){
		printf("\t- Error: remote port not found. (%s)\n\t  Check if KinectDeviceDriverServer is running.\n",remotePortIn.c_str());
		return false;
	}

	if(!connectPorts(remotePortPrefix,localPortPrefix)) {
		printf("\t- Error: Could not connect or create ports.\n");
		return false;
	}

	//_portMod = new PortCtrlMod();
	//_portMod->setInterfaceDriver(this);
	_inUserSkeletonPort->useCallback(*this);
	_inDepthMapPort->useCallback(*this);
	_inImageMapPort->useCallback(*this);

	return true;
}
Exemple #12
0
int main( int argc, char* args[] )
{
    struct Vedbox* vedbox=createVedbox();
    loadProgram(vedbox,"./prog1");
    vedbox->Registers[0]=0;

    printf("Before making terminal\n");
    struct Terminal* terminal=createTerminal("DEBUGTERM");
    struct Cable* termcable=connectPorts(vedbox->SerialPort,terminal->inputPort);

    printf("Terminal created\n");
    SDL_Surface* screen = SDL_SetVideoMode(320,240,32,SDL_SWSURFACE|SDL_SRCALPHA );
    //Start SDL
    SDL_Init( SDL_INIT_VIDEO );

    SDL_ShowCursor(SDL_DISABLE);

    if (!screen)
    {
        printf("SDL_SetVideoMode failed\n");
        return 0;
    }

    struct vedImage* vedbox_front=vedCreateImage("./res/vedbox_front.png",128,64);
    struct vedFont* font=vedCreateFont("./res/bigtext.png",5,5);
    struct vedFont* greenfont=vedNewFontColor(font,0x0000ff00);

    SDL_Rect r = {0,0,320,240};

    vedQuitGame=0;

    vedInitInput();

    char buffer[8];
    int i;
    while(vedQuitGame!=1)
    {
        SDL_FillRect(screen,&r,0);

        vedDrawImage(screen,vedbox_front,32,176,0);
        for(i=0; i<8; ++i)
        {
            sprintf(buffer,"%.4X",vedbox->Registers[i]);
            vedWriteFont(screen,
                         greenfont,
                         65+(int)(i/4)*48,
                         198+(i%4)*8,
                         buffer);
        }
        printf("PC  |A   |B   |C   |D   |E   |F   |FR\n");
        for(i=0; i<8; ++i)
        {
            printf("%.4x ",vedbox->Registers[i]);
        }
        printf("\n");
        performCycle(vedbox);
        cycleTerminal(terminal);
        renderTerminal(screen,font,10,10,terminal);

        //Update Screen
        SDL_Flip( screen );
        //Pause
        SDL_Delay( 300 );

        vedInput();
    }

    //Quit SDL
    SDL_Quit();

    return 0;
}