コード例 #1
0
ファイル: main.cpp プロジェクト: ruseman/csc222
int main(int argc, char* args[])
{
    if(SDL_Init(SDL_INIT_EVERYTHING) < 0)
        return false;

    backbuffer = SDL_SetVideoMode(800, 600, 32, SDL_SWSURFACE);

    SDL_WM_SetCaption("I was going to use a spaceship but I like richard stallman more", NULL);

    if(!loadFiles())
    {
        freeFiles();
        SDL_Quit();
        return 0;
    }

    while(programIsRunning())
    {
        //Handle Input
        Uint8* keys = SDL_GetKeyState(NULL);

        if(keys[SDLK_ESCAPE])
            break;

        if(keys[SDLK_LEFT])
        	dirX = -1;

        if(keys[SDLK_RIGHT])
        	dirX = 1;

        if(keys[SDLK_UP])
            dirY = -1;

        if(keys[SDLK_DOWN])
            dirY = 1;

        if(keys[SDLK_BACKSPACE]){
        	dirX=0;
        	dirY=0;
        }

        moveShape();

        drawImage(spriteBackground,backbuffer, 0, 0);
        drawImage(spriteImage, backbuffer, SpriteX, SpriteY);

        SDL_Delay(20);
        SDL_Flip(backbuffer);
    }

    freeFiles();

    SDL_Quit();

    return 1;
}
コード例 #2
0
ファイル: server.c プロジェクト: dangada7/ftp-client-server-c
/********************************************************
 * handleOneClient
 ********************************************************/
void handleOneClient(int sd){
	int clientSd, numberOfFiles;
	struct file* file;
	numberOfFiles = 1;

	//(7)accept connection from each of the socket in filesSocketsArr
	puts("\n------------(3.4)accept connection;--------------");
	clientSd = acceptConnection(sd);
	//connectedFilesSocketsArr = accept_connection_from_array_of_sockets(filesSocketsArr, numberOfFiles, "filesSocketsArr");

	//(8)get file from each of the socket in connectedFilesSocketsArr
	puts("\n------------(3.5)get files--------------");

	file = get_files_from_array_of_sockets(&clientSd, numberOfFiles);

	//(8)get file from each of the socket in connectedFilesSocketsArr
	puts("\n------------(3.6)save files--------------");
	writeFiles(file, numberOfFiles);

	//(9)close master_socket, client_socket and all the socket in filesSockets
	puts("\n------------(3.7)close sockets and free file--------------");
	closeSocket(clientSd);
	freeFiles(file,numberOfFiles,"file");


}
コード例 #3
0
ファイル: server.c プロジェクト: dangada7/ftp-client-server-c
/********************************************************
 * server2
 * general		without select
 ********************************************************/
void server2()
{
	int masterSocket, connectedMasterSocket, numberOfFiles, *filesSocketsArr, *freePortsArr, * connectedFilesSocketsArr;
	struct file* files;

	//(1)listen on control master_socket
	masterSocket = listenOnPort(CONTROL_PORT);

	while(1){
		//(2)accept new connection form master_socket
		puts("\n------------(1)wait for connection--------------");
		connectedMasterSocket  = acceptConnection(masterSocket);

		//(3)get port Number from client
		puts("\n------------(2)get number of files--------------");
		numberOfFiles = getIntFromClient(connectedMasterSocket,"numberOfFiles");

		//(4)listen to socket on random free ports
		puts("\n------------(3)listen on random ports--------------");
		filesSocketsArr  = listenOnSocketWithFreePorts(numberOfFiles);

		//(5)get filesSockets port
		puts("\n------------(4)random ports--------------");
		freePortsArr = getPortNumberFromSockets(filesSocketsArr, numberOfFiles);

		//(6)send to client the free ports
		puts("\n------------(5)send free ports to client--------------");
		SendIntArrayToClient(connectedMasterSocket,freePortsArr, numberOfFiles ,"freePortsArr");

		//(7)accept connection from each of the socket in filesSocketsArr
		puts("\n------------(6)accept connection from new sockets--------------");
		connectedFilesSocketsArr = accept_connection_from_array_of_sockets(filesSocketsArr, numberOfFiles, "filesSocketsArr");

		//(8)get file from each of the socket in connectedFilesSocketsArr
		puts("\n------------(7)get files--------------");
		files = get_files_from_array_of_sockets(connectedFilesSocketsArr, numberOfFiles);

		//(8)get file from each of the socket in connectedFilesSocketsArr
		puts("\n------------(8)save files--------------");
		writeFiles(files, numberOfFiles);

		//(9)close master_socket, client_socket and all the socket in filesSockets
		puts("\n------------(9)close sockets--------------");
		closeSocket(connectedMasterSocket);
		closeSockets(filesSocketsArr, numberOfFiles, "filesSocketsArr");
		closeSockets(connectedFilesSocketsArr, numberOfFiles, "connectedFilesSocketsArr");

		//(10)free filesSocketsArr and freePortsArr
		puts("\n------------(10)free memory--------------");
		myFree(connectedFilesSocketsArr,"connectedFilesSocketsArr");
		myFree(filesSocketsArr,"filesSocketsArr");
		myFree(freePortsArr,"freePortsArr");
		freeFiles(files, numberOfFiles,"files");
	}
	closeSocket(masterSocket);

	puts("server close");
}
コード例 #4
0
ファイル: files.c プロジェクト: emukidid/swiss-gc
void scanFiles() {
	freeFiles();
	// Read the directory/device TOC
	if(curDirEntries){ free(curDirEntries); curDirEntries = NULL; }
	print_gecko("Reading directory: %s\r\n",curFile.name);
	curDirEntryCount = devices[DEVICE_CUR]->readDir(&curFile, &curDirEntries, -1);
	memcpy(&curDir, &curFile, sizeof(file_handle));
	sortFiles(curDirEntries, curDirEntryCount);
	print_gecko("Found %i entries\r\n",curDirEntryCount);
}
コード例 #5
0
ファイル: main.c プロジェクト: koromo/Distributer
int main(int argv, char** argc)
{
    File* hw;
    Marker* markers;
    Marker* it;
    const char* markersPath;
    const char* hwPath;
    FILE* outFile;

    if (argv != 3)
    {
        printf("Usage: %s markers homeworks\n", argc[0]);
        printf("markers: Markers file path.\n");
        printf("files: HW files path.\n");
        exit(EXIT_FAILURE);
    }

    markersPath = argc[1];
    hwPath = argc[2];

    markers = readMarkers(markersPath);

    srand(time(NULL));
    rand();
    rand();

    hw = makeFileList(hwPath);
    markers = distribute(hw, markers);
    markers = sortMarkers(markers, numMarkers(markers));
    for (it = markers; it; it = it->next)
    {
        it->files = sortFiles(it->files, numFiles(it->files));
    }

    printMarkers(markers);

    for (it = markers; it; it = it->next)
    {
        free((void*)it->name);
    }

    freeMarkers(markers);
    freeFiles(hw);

    return 0;
}
コード例 #6
0
ファイル: main.cpp プロジェクト: aranasaurus/bamgp-exercises
int main() {
    if ( SDL_Init( SDL_INIT_VIDEO | SDL_INIT_EVENTS ) < 0 ) {
        printf( "Failed to initialize SDL: %s\n", SDL_GetError() );
        return 0;
    }

    SDL_Window* window = SDL_CreateWindow( "Let's Rock!", NULL, NULL, WIN_W, WIN_H, SDL_WINDOW_ALLOW_HIGHDPI | SDL_WINDOW_SHOWN );

    if ( window == NULL ) {
        printf( "Failed to create SDL Window: %s\n", SDL_GetError() );
        return 0;
    }

    backBuffer = SDL_GetWindowSurface( window );
    srand( time( NULL ) );

    if ( !loadFiles() ) {
        printf( "Failed to load files!\n" );
        freeFiles();
        SDL_Quit();
        return 0;
    }

    /*
    ex1();
    ex2();
    */
    ex3();
    while ( runEventLoop() ) {
        SDL_UpdateWindowSurface( window );
        SDL_Delay( 20 );
    }

    SDL_DestroyWindow( window );
    SDL_Quit();
    return 0;
}
コード例 #7
0
ファイル: main.c プロジェクト: sasalatart/IIC2133-2014-2
int main(int argc, char* argv[]) {
    struct timeval stv, etv;
    struct timezone stz, etz;
    double initialTime = 0.0;
    double finalTime = 0.0;

    int opcion;
    char *directorio;
    char *archivoPalabras;

    gettimeofday (&stv, &stz);

    if (argc == 4) {
        sscanf(argv[1], "%d", &opcion);     
        directorio = argv[2];
        archivoPalabras = argv[3];
    }
    else {
        printf("No se ingresaron todos los parametros.");
        
        return(0);
    }

    FILE* indexFile;
    char* index[NUMWORDS];
    FILE* files[NUMFILES];
    char* fileNames[NUMFILES];
    char buffer[BUFFERSIZE];
    int numFiles = 0;
    int wordCount = 0;

    struct hashTable* tablaHash;

    int a = rand()%PRIMENUMBER;
    int b = rand()%PRIMENUMBER;
    int hashParams[] = {opcion, a, b}; 

    int factorArray[NUMCHARS];
    int p;
    for (p = 0; p < NUMCHARS; p++) {
        factorArray[p] = rand()%PRIMENUMBER;
    }

    indexFile = readDir(indexFile, files, fileNames, buffer, directorio, archivoPalabras, &numFiles);

    createIndex(indexFile, index, &wordCount);

    tablaHash = createHashTable(PRIMENUMBER);

    fillTable(tablaHash, files, fileNames, numFiles, hashParams, factorArray);

    gettimeofday (&etv, &etz);
    initialTime = (etv.tv_sec - stv.tv_sec) + (etv.tv_usec - stv.tv_usec)/1000000.0;
    printf("Tiempo de pre-procesamiento: %lf seg.\n", initialTime);

    searchWordList(tablaHash, index, wordCount, hashParams, factorArray);

    gettimeofday (&etv, &etz);
    finalTime = (etv.tv_sec - stv.tv_sec) + (etv.tv_usec - stv.tv_usec)/1000000.0;
    printf("Tiempo de procesamiento: %lf seg.\n", (finalTime - initialTime));

    freeFiles(files, fileNames, numFiles);

    return 0;
}
コード例 #8
0
ファイル: driverparse.c プロジェクト: Fat-Zer/tdelibs
int execute(int argc, char *argv[])
{
	FILE	*dbFile;
	int	i;
	char	*c, *d;

	/* open output driver DB file */
	if (argc < 2 || argc > 3)
	{
		fprintf(stderr, "usage: make_driver_db <db_directory> [output_filename]\n");
		return -1;
	}
	if (argc == 3)
	{
		dbFile = fopen(argv[2], "w");
		if (dbFile == NULL)
		{
			fprintf(stderr, "unable to open DB file for writing\n");
			return -1;
		}
	}
	else
		dbFile = stdout;

	/* init parsing */
	c = argv[1];
	do
	{
		d = strchr(c, ':');
		if (d != NULL)
			*d = 0;
		if (strncmp(c, "module:", 7) == 0)
		{
			addLib(c+7);
		}
		else
		{
			for (i=0; i<nhandlers; i++)
			{
				(*(handlers[i]->init))(c);
			}
		}
		if (d != NULL)
			c = d+1;
	} while (d && *c);


	/* do actual parsing */
	fprintf(stdout, "%d\n", nfiles);
	fflush(stdout);
	for (i=0; i<nfiles; i++)
	{
		int	hi;
		for (hi=0; hi<nhandlers; hi++)
			if (strncmp(files[i], handlers[hi]->name, handlers[hi]->namelen) == 0)
			{
				handlers[hi]->parse(files[i]+handlers[hi]->namelen, dbFile);
				break;
			}
		fprintf(stdout, "%d\n", i);
		fflush(stdout);
	}

	/* free everything */
	freeFiles();
	freeHandlers();
	freeLibs();
	if (dbFile != stdout)
		fclose(dbFile);

	return 0;
}