예제 #1
0
MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    //initialize main window
    initWindow();

    //initialize some variables for first use
    initFirstUse();

    //restore old settings
    restoreSettings();

    //initalize upload process
    initProcess();

    //connects
    connect(procUpload,SIGNAL(readyReadStandardOutput()),this,SLOT(affichUpload()));
    connect(procUpload,SIGNAL(readyReadStandardError()),this,SLOT(affichUpload()));
    connect(ui->buttonExit, SIGNAL(clicked()), qApp, SLOT(quit()));

    //initialize build directory if there is an argument
    initBuildDirectory();

    //initalize sockets
    initSocket();
}
예제 #2
0
SorolletVSTi::SorolletVSTi(audioMasterCallback audioMaster) : AudioEffectX(audioMaster, kNumPrograms, kNumParams)
{
	if (audioMaster)
	{
		// TODO: load default / more varied programs!

		// initialize programs
		programs = new SorolletVSTiProgram[kNumPrograms];
		for (VstInt32 i = 0; i < 16; i++)
			channelPrograms[i] = i;

		mSorolletVoice = new SorolletVoice();

		if (programs)
		{
			setProgram(0);
		}

		setNumInputs(0); // no inputs
		setNumOutputs(kNumOutputs); // 2 outputs
		canProcessReplacing();
		isSynth();
		setUniqueID('so02');

		currentEvent = EVENT_NULL;

		initProcess();
		suspend();
	}
}
예제 #3
0
파일: mvt.c 프로젝트: mitcse/CSE-Labs
int main (int argc, const char * argv []) {

	int total_memory;
	printf("Enter total available memory: ");
	scanf(" %d", &total_memory);

	process_p_t processes[100];

	int i = 0;
	int memory_used = 0;
	int memory_available = total_memory;

	char mander;

	do {
		processes[i] = initProcess(i);	
		process_p_t proc = processes[i];

		if (memory_available > proc->memory_required) {
			memory_available -= proc->memory_required;
			memory_used += proc->memory_required;
			proc->allocated = YES;
			printf("Memory allocated for process %d\n", i+1);
		} else {
			printf("Not enough memory (%d) for process %d.\n", memory_available, i+1);
		}

		i += 1;

		printf("Continue (y/n): ");
		scanf(" %c", &mander);

	} while (mander == 'y');

	printf("-----------------------------\n");
	printf("Total memory available: %d\n", total_memory);

	printf("PROCESS |\tALLOCATED |\tMEMORY_ALLOCATED\n");
	i = 0;
	do {
		process_p_t proc = processes[i];
		if (proc == NULL) break;
		if (proc->allocated) {
			printf("%d\t|\tYES\t|\t%d\n", proc->pid, proc->memory_required);
		} else {
			printf("%d\t|\tNO\t|\t---\n", proc->pid);
		}
		i++;
	} while (YES);
	printf("\nTotal memory allocated = %d\nTotal external fragmentation = %d\n", memory_used, memory_available);

	return 0;

}
예제 #4
0
파일: test.cpp 프로젝트: ErisBlastar/osfree
void main(void) {
        initFileTable();
        initProcess(0,0);
        initMemory();
        
        APIRET rc;
        PVOID pv;
        rc = DosAllocSharedMem(&pv, "\\SHAREMEM\\Ivan", 8192, PAG_COMMIT|PAG_READ|PAG_WRITE);
        if(rc==0)
                rc = DosFreeMem(pv);
        printf("rc=%d\n",rc);
}
void BatchProcessImagesDialog::slotPreview()
{
    kDebug() << "BatchProcessImagesDialog::slotPreview";

    if (m_listFiles->currentItem() == 0)
    {
        KMessageBox::error(this, i18n("You must select an item from the list to calculate the preview."));
        return;
    }

    BatchProcessImagesItem* item = static_cast<BatchProcessImagesItem*>(m_listFiles->currentItem());

    enableWidgets(false);

    disconnect(this, SIGNAL(user1Clicked()),
               this, SLOT(slotProcessStart()));

    showButton(KDialog::Cancel, false);
    setButtonText(User1, i18n("&Stop"));

    connect(this, SIGNAL(user1Clicked()),
            this, SLOT(slotPreviewStop()));

    m_PreviewProc = new KProcess(this);
    m_PreviewProc->setOutputChannelMode(KProcess::MergedChannels);
    initProcess(m_PreviewProc, item, QString(), true);

    m_previewOutput = m_PreviewProc->program().join(" ");

    *m_PreviewProc << m_tmpFolder + '/' + QString::number(getpid()) + "preview.PNG";
    m_previewOutput.append(' '  + m_tmpFolder + '/' + QString::number(getpid()) + "preview.PNG\n\n");

    connect(m_PreviewProc, SIGNAL(finished(int,QProcess::ExitStatus)),
            this, SLOT(slotPreviewFinished()));

    connect(m_PreviewProc, SIGNAL(readyRead()),
            this, SLOT(slotPreviewReadyRead()));

    m_PreviewProc->start();
    if (!m_PreviewProc->waitForStarted())
    {
        KMessageBox::error(this, i18n("Cannot start 'convert' program from 'ImageMagick' package;\n"
                                      "please check your installation."));
        m_ui->m_previewButton->setEnabled(true);
        return;
    }
}
예제 #6
0
//-----------------------------------------------------------------------------------------
tf3Synth::tf3Synth (audioMasterCallback audioMaster, void* hInstance)
	: AudioEffectX (audioMaster, kNumPrograms, TF_PARAM_COUNT)
{
	// Initialize module path
	eChar mpath[512];
	eMemSet(mpath, 0, 512);
	GetModuleFileName((HMODULE)hInstance, mpath, 512);

	eChar *str = &mpath[511];
	while (str != mpath && *str!='/' && *str!='\\')
	{
		*str-- = '\0';
	}
	
	modulePath = QString(mpath);

	// Initialize tunefish
	tf = new tfInstrument();

	// initialize programs
	for (long i = 0; i < kNumPrograms; i++)
		programs[i].loadDefault(i);

	loadProgramAll();

	for (long i = 0; i < 16; i++)
		channelPrograms[i] = i;

	if (programs)
		setProgram (0);

    editor = new tfEditor(this);
	
	if (audioMaster)
	{
		setNumInputs (0);				// no inputs
		setNumOutputs (kNumOutputs);	// 2 outputs, 1 for each oscillator
		canProcessReplacing ();
		hasVu (false);
		hasClip (false);
		isSynth ();
		setUniqueID ('TF3');			// <<<! *must* change this!!!!
	}
	initProcess ();

	suspend ();
}
예제 #7
0
void MainWindow::execBatchFile(bool dowSucc, QString msg)
{
    (void)(msg);
    // paso 3:
    if(dowSucc) {
        QMessageBox::information(this, tr("Success"),tr("Archivo descargado con exito!") );
        initProcess();
        ui->actionCMD->setEnabled(true);
        //QString cmd(WORKING_DIR+"/temp/install.bat");
        //batProcess->write(cmd.toLatin1());
    }

    else{
        QMessageBox::information(this, tr("Failed"),tr("Error al descargar el archivo.") );
        writeText("^ ["+msg+"]", msg_alert);
        soft_actualizando = false;
        emit errorGeneral(100);
    }
}
예제 #8
0
bool IApplication::init(const String &rootPath)
{
	String versionName;
	versionName.append(OS_OSIRIS_APPLICATION_NAME);
	versionName.append(String::format(_S(" %d.%d").c_str(), OS_OSIRIS_VERSION_MAJOR, OS_OSIRIS_VERSION_MINOR));
	/* // Show release name only with "... is ready.".
	if(OS_OSIRIS_RELEASE_NAME != String::EMPTY)
	{
		versionName.append(_S(" "));
		versionName.append(OS_OSIRIS_RELEASE_NAME);
	}
	*/
	NotificationsManager::instance()->notify(versionName + _S(" is starting..."));
	
	if(PlatformManager::instance()->isPrivilegedUser())
		NotificationsManager::instance()->notify(_S("Running with a user with system privileges."));
	else
		NotificationsManager::instance()->notify(_S("Running with a user without system privileges. Some options maybe unavailable."));

	NotificationsManager::instance()->notify(_S("Platform: ") + Engine::getPlatformName());

	NotificationsManager::instance()->notify("Initializing options...");

	if(Options::instance()->load(rootPath) == false)
	{
		OS_LOG_ERROR("Error loading options");
		return false;
	}

	// Compatibility - TOCLEAN - Inutile collocarla più pulita, tanto la tolgo proprio con Razor (che non supporterà l'aggiornamento da 0.X).
	if(FileSystem::instance()->directoryExists(utils::makeFolderPath(Options::instance()->getDataPath(), OS_PLUGINS_PATH)))
		FileSystem::instance()->rename(utils::makeFolderPath(Options::instance()->getDataPath(), OS_PLUGINS_PATH), utils::makeFolderPath(Options::instance()->getDataPath(), OS_STORE_PATH));

	initProcess();

	if(isPrimaryProcess() == false)
		return false;

	return true;
}
예제 #9
0
파일: vstxsynth.cpp 프로젝트: berak/vst2.0
//-----------------------------------------------------------------------------------------
// VstXSynth
//-----------------------------------------------------------------------------------------
VstXSynth::VstXSynth (audioMasterCallback audioMaster)
: AudioEffectX (audioMaster, kNumPrograms, kNumParams)
{
	// initialize programs
	programs = new VstXSynthProgram[kNumPrograms];
	for (VstInt32 i = 0; i < 16; i++)
		channelPrograms[i] = i;

	if (programs)
		setProgram (0);
	
	if (audioMaster)
	{
		setNumInputs (0);				// no inputs
		setNumOutputs (kNumOutputs);	// 2 outputs, 1 for each oscillator
		canProcessReplacing ();
		isSynth ();
		setUniqueID ('P451');			// <<<! *must* change this!!!!
	}

	initProcess ();
	suspend ();
}
예제 #10
0
int main(int argc, char *argv[])
{
	initProcess(argc, argv);
	return 0;
}
예제 #11
0
void IBoard::initial() {
    initProcess();
}
예제 #12
0
파일: mirsynth.cpp 프로젝트: EQ4/miriyaki
//-----------------------------------------------------------------------------------------
// MirSynth
//-----------------------------------------------------------------------------------------
MirSynth::MirSynth (audioMasterCallback audioMaster)
: AudioEffectX (audioMaster, kNumPrograms, kNumParams)
{
	out_buffer = new float [2];
	voice_buffer = new float [2];
	globals = new cGlobals();
	Glob = globals;
	Glob->sampleRate = getSampleRate();
	Glob->sampleTime = 1.0f / Glob->sampleRate;

	lfo[0] = new cLFO(1,	&(Glob->zLfoRate[0]),
							&(Glob->parameters[kLfo1PhaseShift]->value),
							&(Glob->parameters[kLfo1Delay]->value),
							&(Glob->parameters[kLfo1Fade]->value),
							&(Glob->iLfoWave[0]),
							&(Glob->parameters[kLfo1Mono]->value),
							&(Glob->lfoValue[0]));
	lfo[1] = new cLFO(2,	&(Glob->zLfoRate[1]),
							&(Glob->parameters[kLfo2PhaseShift]->value),
							&(Glob->parameters[kLfo2Delay]->value),
							&(Glob->parameters[kLfo2Fade]->value),
							&(Glob->iLfoWave[1]),
							&(Glob->parameters[kLfo2Mono]->value),
							&(Glob->lfoValue[1]));
	lfo[2] = new cLFO(3,	&(Glob->zLfoRate[2]),
							&(Glob->parameters[kLfo3PhaseShift]->value),
							&(Glob->parameters[kLfo3Delay]->value),
							&(Glob->parameters[kLfo3Fade]->value),
							&(Glob->iLfoWave[2]),
							&(Glob->parameters[kLfo3Mono]->value),
							&(Glob->lfoValue[2]));
	lfo[3] = new cLFO(4,	&(Glob->zLfoRate[3]),
							&(Glob->parameters[kLfo4PhaseShift]->value),
							&(Glob->parameters[kLfo4Delay]->value),
							&(Glob->parameters[kLfo4Fade]->value),
							&(Glob->iLfoWave[3]),
							&(Glob->parameters[kLfo4Mono]->value),
							&(Glob->lfoValue[3]));
	for (VstInt32 i=0;i<4;i++)
	{
		if (lfo[i])	lfo[i]->resetGlobal();
	}

	filter[0] = new cGlobFilter();
	filter[1] = new cGlobFilter();

	programs = new MirSynthProgram[kNumPrograms];

	char *str;
	str = new char[kVstMaxProgNameLen];
	for (VstInt32 i = 0; i < 16; i++)
	{
		sprintf(str, "Preset %.2d", i);
		vst_strncpy (programs[i].name, str, kVstMaxProgNameLen);
		channelPrograms[i] = i;
	}

	if (programs) 
	{
		defaultPresets();
		defaultPresets2();
		defaultPresets3();
	/*	defaultPresets4();
		defaultPresets5();
		defaultPresets6();
		defaultPresets7();
		defaultPresets8();
		defaultPresets9();
		defaultPresets10();*/
	}

	if (audioMaster)
	{
		setNumInputs (0);
		setNumOutputs (kNumOutputs);
		canProcessReplacing ();
		isSynth ();
		setUniqueID ('tst2');			
	}

	for (int i=0;i<MAX_POLYPHONY;i++)
  	  voices[i] = new cVoice();
	
	editor = new cMirEditor(this);

	initProcess ();
	suspend ();
}
bool BatchProcessImagesDialog::startProcess()
{
    if (m_convertStatus == STOP_PROCESS)
    {
        endProcess();
        return true;
    }

    QString targetAlbum = m_ui->m_destinationUrl->url().path();

    //TODO check if it is valid also for remote URL's
    // this is a workarond for bug 117397
    QFileInfo dirInfo(targetAlbum + '/');
    if (!dirInfo.isDir() || !dirInfo.isWritable())
    {
        KMessageBox::error(this, i18n("You must specify a writable path for your output file."));
        endProcess();
        return true;
    }

    BatchProcessImagesItem* item = static_cast<BatchProcessImagesItem*>(**m_listFile2Process_iterator);
    m_listFiles->setCurrentItem(item);

    // Lock current item into KIPI host application
    KPFileReadLocker(iface(), item->pathSrc());

    if (prepareStartProcess(item, targetAlbum) == false)   // If there is a problem during the
    {                                                   // preparation -> pass to the next item!
        ++*m_listFile2Process_iterator;
        ++m_progressStatus;
        m_ui->m_progress->setValue((int)((float)m_progressStatus *(float)100 / (float)m_nbItem));
        item = static_cast<BatchProcessImagesItem*>(**m_listFile2Process_iterator);
        m_listFiles->setCurrentItem(item);

        if (**m_listFile2Process_iterator)
        {
            startProcess();
            return true;
        }
        else
        {
            endProcess();
            return true;
        }
    }

    KUrl desturl(targetAlbum + '/' + item->nameDest());

    if (KIO::NetAccess::exists(desturl, KIO::NetAccess::DestinationSide,
                               kapp->activeWindow()) == true)
    {
        switch (overwriteMode())
        {
            case OVERWRITE_ASK:
            {
                int ValRet = KMessageBox::warningYesNoCancel(this,
                            i18n("The destination file \"%1\" already exists;\n"
                                  "do you want overwrite it?", item->nameDest()),
                            i18n("Overwrite Destination Image File"), KStandardGuiItem::cont());

                if (ValRet == KMessageBox::No)
                {
                    item->changeResult(i18n("Skipped."));
                    item->changeError(i18n("destination image file already exists (skipped by user)."));
                    ++*m_listFile2Process_iterator;
                    ++m_progressStatus;
                    m_ui->m_progress->setValue((int)((float)m_progressStatus *(float)100 / (float)m_nbItem));

                    if (**m_listFile2Process_iterator)
                    {
                        startProcess();
                        return true;
                    }
                    else
                    {
                        endProcess();
                        return true;
                    }
                }
                else if (ValRet == KMessageBox::Cancel)
                {
                    processAborted(false);
                    return false;
                }
                else
                {
                    item->setDidOverWrite(true);
                }

                break;
            }

            case OVERWRITE_RENAME:
            {
                QFileInfo Target(targetAlbum + '/' + item->nameDest());
                QString newFileName = RenameTargetImageFile(&Target);

                if (newFileName.isNull())
                {
                    item->changeResult(i18nc("batch process result", "Failed."));
                    item->changeError(i18n("destination image file already exists and cannot be renamed."));
                    ++*m_listFile2Process_iterator;
                    ++m_progressStatus;
                    m_ui->m_progress->setValue((int)((float)m_progressStatus *(float)100 / (float)m_nbItem));

                    if (**m_listFile2Process_iterator)
                    {
                        startProcess();
                        return true;
                    }
                    else
                    {
                        endProcess();
                        return true;
                    }
                }
                else
                {
                    QFileInfo newTarget(newFileName);
                    item->changeNameDest(newTarget.fileName());
                }

                break;
            }

            case OVERWRITE_SKIP:
            {
                item->changeResult(i18n("Skipped."));
                item->changeError(i18n("destination image file already exists (skipped automatically)."));
                ++*m_listFile2Process_iterator;
                ++m_progressStatus;
                m_ui->m_progress->setValue((int)((float)m_progressStatus *(float)100 / (float)m_nbItem));

                if (**m_listFile2Process_iterator)
                {
                    startProcess();
                    return true;
                }
                else
                {
                    endProcess();
                    return true;
                }

                break;
            }

            case OVERWRITE_OVER:   // In this case do nothing : 'convert' default mode...
                item->setDidOverWrite(true);
                break;

            default:
            {
                endProcess();
                return true;
            }
        }
    }

    m_ProcessusProc = new KProcess(this);
    m_ProcessusProc->setOutputChannelMode(KProcess::MergedChannels);
    initProcess(m_ProcessusProc, item, targetAlbum);
    m_commandLine = m_ProcessusProc->program().join(" ");

    item->changeOutputMess(m_commandLine + "\n\n");

    connect(m_ProcessusProc, SIGNAL(finished(int,QProcess::ExitStatus)),
            this, SLOT(slotFinished()));

    connect(m_ProcessusProc, SIGNAL(readyRead()),
            this, SLOT(slotReadyRead()));

    m_ProcessusProc->start();
    if (!m_ProcessusProc->waitForStarted())
    {
        KMessageBox::error(this, i18n("Cannot start 'convert' program from 'ImageMagick' package;\n"
                                      "please check your installation."));
        delete m_ProcessusProc;
        m_ProcessusProc = 0;
        return false;
    }

    return true;
}