Example #1
0
int main(int argc, char* args[]) {
	
	/* Check arguments */
	if (argc <= 1) {
		std::cerr << "Error: No input files.\n";
		std::cin.get();
		return -1;
	}
	
	/* Initialize FreeImage */
	#ifdef FREEIMAGE_LIB
		FreeImage_Initialise();
	#endif
	std::cout << "Using FreeImage version " << FreeImage_GetVersion() << "\n";
	
	/* Convert all files */
	for (int i = 1; i < argc; i++) convert(args[i]);
	
	/* Deinitialize FreeImage */
	#ifdef FREEIMAGE_LIB
		FreeImage_DeInitialise();
	#endif
	std::cout << "\nFinished." << std::endl;
	
	/* Wait for input */
	std::cin.get();
	
	return 0;
}
static BOOL DLL_CALLCONV
Save(FreeImageIO *io, FIBITMAP *dib, fi_handle handle, int page, int flags, void *data) {
	if(!dib) return FALSE;

	if(FreeImage_GetImageType(dib) != FIT_RGBF)
		return FALSE;

	unsigned width  = FreeImage_GetWidth(dib);
	unsigned height = FreeImage_GetHeight(dib);

	// write the header

	rgbeHeaderInfo header_info;
	memset(&header_info, 0, sizeof(rgbeHeaderInfo));
	// fill the header with correct gamma and exposure
	rgbe_WriteMetadata(dib, &header_info);
	// fill a comment
	sprintf(header_info.comment, "# Made with FreeImage %s", FreeImage_GetVersion());
	if(!rgbe_WriteHeader(io, handle, width, height, &header_info)) {
		return FALSE;
	}

	// write each scanline

	for(unsigned y = 0; y < height; y++) {
		FIRGBF *scanline = (FIRGBF*)FreeImage_GetScanLine(dib, height - 1 - y);
		if(!rgbe_WritePixels_RLE(io, handle, scanline, width, 1)) {
			return FALSE;
		}
	}

	return TRUE;
}
Example #3
0
void	Surface_Init()
{
	Msg("* ImageLibrary version: %s",FreeImage_GetVersion());

    formats.format_register("tga");
	Surface_FormatExt(FIF_BMP);
	Surface_FormatExt(FIF_ICO);
	Surface_FormatExt(FIF_JPEG);
	Surface_FormatExt(FIF_JNG);
	Surface_FormatExt(FIF_KOALA);
	Surface_FormatExt(FIF_LBM);
	Surface_FormatExt(FIF_MNG);
	Surface_FormatExt(FIF_PBM);
	Surface_FormatExt(FIF_PBMRAW);
	Surface_FormatExt(FIF_PCD);
	Surface_FormatExt(FIF_PCX);
	Surface_FormatExt(FIF_PGM);
	Surface_FormatExt(FIF_PGMRAW);
	Surface_FormatExt(FIF_PNG);
	Surface_FormatExt(FIF_PPM);
	Surface_FormatExt(FIF_PPMRAW);
	Surface_FormatExt(FIF_RAS);
	Surface_FormatExt(FIF_TARGA);
	Surface_FormatExt(FIF_TIFF);
	Surface_FormatExt(FIF_WBMP);
	Surface_FormatExt(FIF_PSD);
	Surface_FormatExt(FIF_IFF);

	Msg("* %d supported formats",formats.size());
}
Example #4
0
int 
main(int argc, char *argv[]) {
	// call this ONLY when linking with FreeImage as a static library
#ifdef FREEIMAGE_LIB
	FreeImage_Initialise();
#endif // FREEIMAGE_LIB

	// initialize FreeImage error handler

	FreeImage_SetOutputMessage(MyMessageFunc);

	// print version & copyright infos

	cout << "FreeImage " << FreeImage_GetVersion() << "\n";
	cout << FreeImage_GetCopyrightMessage() << "\n\n";

	// Print input formats (including external plugins) known by the library
	fstream importFile("fif_import.csv", ios::out);
	PrintImportFormats(importFile);
	importFile.close();

	// Print output formats (including plugins) known by the library
	// for each export format, supported bitdepths are given
	fstream exportFile("fif_export.csv", ios::out);
	PrintExportFormats(exportFile);
	exportFile.close();

	// call this ONLY when linking with FreeImage as a static library
#ifdef FREEIMAGE_LIB
	FreeImage_DeInitialise();
#endif // FREEIMAGE_LIB

	return 0;

}
Example #5
0
int main(int argc, char *argv[])
{
    //  initialize the GLUT library.
    glutInit(&argc, argv);
    // set the display mode
    glutInitDisplayMode(GLUT_RGBA | GLUT_ALPHA | GLUT_DEPTH | GLUT_DOUBLE);
    // set the window size
    glutInitWindowSize(windowWidth, windowHeight);
    // creates a top-level window.
    glutCreateWindow("LengXuegang's Homework");
    // initialize the extension entry points
    GLenum error = glewInit();
    if (GLEW_OK != error)
    {
        fprintf(stderr, "Error: %s\n", glewGetErrorString(error));
        exit(-1);
    }

    FreeImage_Initialise(false);

    const char *version = FreeImage_GetVersion();
    fprintf(stdout, "version: %s", version);

    const char *copyright = FreeImage_GetCopyrightMessage();
    fprintf(stdout, "copyright: %s", copyright);

    initPrograms();

    GLint n = initVertex();
    if (n < 0)
    {
        fprintf(stderr, "init vertex failed");
        exit(-1);
    }

    GLint uModelMatrix = glGetUniformLocation(program->getProgramID(), "u_ModelMatrix");
    // GLint uMvpMatrix = glGetUniformLocation(program, "u_MvpMatrix");
    GLint uNormalMatrix = glGetUniformLocation(program->getProgramID(), "u_NormalMatrix");
    GLint uLightColor = glGetUniformLocation(program->getProgramID(), "u_LightColor");
    GLint uLightPosition = glGetUniformLocation(program->getProgramID(), "u_LightPosition");
    GLint uAmbientLight = glGetUniformLocation(program->getProgramID(), "u_AmbientLight");

    glUniform3f(uLightColor, 0.5, 0.9, 0.1);
    glUniform3f(uLightPosition, 1.0, 2.0, 3.0);
    glUniform3f(uAmbientLight, 0.6, 0.6, 0.6);

    // glUniformMatrix4fv(uModelMatrix, )
    // glUniformMatrix4fv(uNormalMatrix, )
    // sets the display callback for the current window.
    glutDisplayFunc(display);
    // sets the reshape callback for the current window.
    glutReshapeFunc(reshape);
    // sets the special keyboard callback for the current window.
    // glutSpecialFunc(specialKey);
    // enters the GLUT event processing loop.
    glutMainLoop();

    return 0;
}
int 
main(int argc, char *argv[]) {
	
	// call this ONLY when linking with FreeImage as a static library
#ifdef FREEIMAGE_LIB
	FreeImage_Initialise();
#endif // FREEIMAGE_LIB

	// initialize your own FreeImage error handler

	FreeImage_SetOutputMessage(FreeImageErrorHandler);

	// print version & copyright infos

	printf("FreeImage version : %s", FreeImage_GetVersion());
	printf("\n");
	printf(FreeImage_GetCopyrightMessage());
	printf("\n");


	if(argc != 3) {
		printf("Usage : CreateAlpha <input file name> <output file name>\n");
		return 0;
	}

	// Load the source image
	FIBITMAP *src = GenericLoader(argv[1], 0);
	if(src) {
		// Create a transparent image from the lightness image of src
		FIBITMAP *dst = CreateAlphaFromLightness(src);

		if(dst) {
			// Save the destination image
			bool bSuccess = GenericWriter(dst, argv[2], 0);
			if(!bSuccess) {
				printf("\nUnable to save %s file", argv[2]);
				printf("\nThis format does not support 32-bit images");
			}

			// Free dst
			FreeImage_Unload(dst);
		}

		// Free src
		FreeImage_Unload(src);
	}

	// call this ONLY when linking with FreeImage as a static library
#ifdef FREEIMAGE_LIB
	FreeImage_DeInitialise();
#endif // FREEIMAGE_LIB

	return 0;
}
int main (int argc, char ** argv)
{
	if (argc != 2){
		printf("you need to give me the number of frames to captures\n");
		exit(-1);
	}
	int num_frames = atoi(argv[1]);
	initialize_pru();
	start_pru();
	FILE * image_data = fopen("/media/usb/image.data", "w");
	if (image_data == NULL){
		fprintf(stderr, "Failed to open image output file");
		exit(-1);
	}

	const char  *version = FreeImage_GetVersion();
	printf("Freeimage version %s\n", version);

	FIBITMAP* dib = FreeImage_Allocate(320, 203, 16, 0xF800, 0x07E0,0x001F); // allocate 320x203 RGB565 bitmap

	int bytespp = FreeImage_GetLine(dib)/FreeImage_GetWidth(dib);

	FREE_IMAGE_TYPE image_type = FreeImage_GetImageType(dib);

	if (image_type == FIT_BITMAP){
		printf("1\n");
	}

	printf("%d %d\n", FreeImage_GetHeight(dib), FreeImage_GetWidth(dib));

	BYTE * bits = FreeImage_GetBits(dib);
	FILE * fp = fopen("image.data", "rb");
	char filename[] = "/root/1314-BeagleBone-Quadcopter/code/ControlTower/ramfs/latest_image.bmp";
	int i = 0;

	for (i = 0; i < num_frames; i++){
		while(i==pruDataMem_int[100]){usleep(100000);}
		int buffer = pruDataMem_int[1];
		printf("%d buffer=%d\n", pruDataMem_int[100], buffer);
		if (i%10==0){
			memcpy(bits, pru1_ddr+buffer*320*240*2, 320*203*2);
			FreeImage_Save(FIF_BMP, dib, filename,0);
		}
	}
	uninitialize_pru();
	fflush(image_data);
	printf("%d\n", ((volatile uint8_t *)pru1_ddr)[0]);
	fclose(image_data);

	prussdrv_pru_disable (PRU_NUM);
	prussdrv_exit ();

	return(0);
}
Example #8
0
	//---------------------------------------------------------------------
	void FreeImageCodec::startup(void)
	{
		FreeImage_Initialise(false);

		LogManager::getSingleton().logMessage(
			LML_NORMAL,
			"FreeImage version: " + String(FreeImage_GetVersion()));
		LogManager::getSingleton().logMessage(
			LML_NORMAL,
			FreeImage_GetCopyrightMessage());

		// Register codecs
		StringUtil::StrStreamType strExt;
		strExt << "Supported formats: ";
		bool first = true;
		for (int i = 0; i < FreeImage_GetFIFCount(); ++i)
		{

			// Skip DDS codec since FreeImage does not have the option 
			// to keep DXT data compressed, we'll use our own codec
			if ((FREE_IMAGE_FORMAT)i == FIF_DDS)
				continue;
			
			String exts(FreeImage_GetFIFExtensionList((FREE_IMAGE_FORMAT)i));
			if (!first)
			{
				strExt << ",";
			}
			first = false;
			strExt << exts;
			
			// Pull off individual formats (separated by comma by FI)
			StringVector extsVector = StringUtil::split(exts, ",");
			for (StringVector::iterator v = extsVector.begin(); v != extsVector.end(); ++v)
			{
				ImageCodec* codec = OGRE_NEW FreeImageCodec(*v, i);
				msCodecList.push_back(codec);
				Codec::registerCodec(codec);
			}
		}
		LogManager::getSingleton().logMessage(
			LML_NORMAL,
			strExt.str());

		// Set error handler
		FreeImage_SetOutputMessage(FreeImageErrorHandler);




	}
Example #9
0
/**
 * Returns 1 (true) if the administrator is successfully initialized.
 * Must be called before using any method.
 */
bool IND_ImageManager::init() {
	end();
	initVars();

	g_debug->header("Initializing ImageManager", DebugApi::LogHeaderBegin);
	g_debug->header("Preparing ImageManager", DebugApi::LogHeaderOk);
	_ok = true;

	FreeImage_Initialise();
	const char* freeImageVer = FreeImage_GetVersion();
	const char* freeImageCopyright = FreeImage_GetCopyrightMessage();
	g_debug->header("Using FreeImage version: ",DebugApi::LogHeaderInfo);
	g_debug->dataChar(freeImageVer, true);
    g_debug->header("Copyright: ", DebugApi::LogHeaderInfo);
    g_debug->dataChar(freeImageCopyright, true);
	g_debug->header("ImageManager Initialised", DebugApi::LogHeaderEnd);
	
	//TODO: REGISTER ERROR HANDLERS FOR FREEIMAGE

	return _ok;
}
Example #10
0
static BOOL DLL_CALLCONV
Save(FreeImageIO *io, FIBITMAP *dib, fi_handle handle, int page, int flags, void *data) {
	if(!dib) return FALSE;

	FREE_IMAGE_TYPE src_type = FreeImage_GetImageType(dib);
	if(src_type != FIT_RGBF) {
		FreeImage_OutputMessageProc(s_format_id, "FREE_IMAGE_TYPE: Unable to convert from type %d to type %d.\n No such conversion exists.", src_type, FIT_RGBF);
		return FALSE;
	}

	unsigned width  = FreeImage_GetWidth(dib);
	unsigned height = FreeImage_GetHeight(dib);

	// write the header

	rgbeHeaderInfo header_info;
	memset(&header_info, 0, sizeof(rgbeHeaderInfo));
	// fill the header with correct gamma and exposure
	rgbe_WriteMetadata(dib, &header_info);
	// fill a comment
	sprintf(header_info.comment, "# Made with FreeImage %s", FreeImage_GetVersion());
	if(!rgbe_WriteHeader(io, handle, width, height, &header_info)) {
		return FALSE;
	}

	// write each scanline

	for(unsigned y = 0; y < height; y++) {
		FIRGBF *scanline = (FIRGBF*)FreeImage_GetScanLine(dib, height - 1 - y);
		if(!rgbe_WritePixels_RLE(io, handle, scanline, width, 1)) {
			return FALSE;
		}
	}

	return TRUE;
}
MainWindow::MainWindow() : playerCosmetics(18), civilianCosmetics(12)
{
    QSettings::setDefaultFormat(QSettings::IniFormat);
    QCoreApplication::setOrganizationName("TEMP_ORG"); //TODO: Add a proper organization name.
    QCoreApplication::setOrganizationDomain("TEMP_ORG.com");
    QCoreApplication::setApplicationName("Driver Level Editor");

    levelHasChanged = false;
    d3dHasChanged = false;
    civCosHasChanged = false;
    playerCosHasChanged = false;
    civDentHasChanged = false;
    playerDentHasChanged = false;
    wdfHasChanged = false;

    mainLog.createLogfile("debug.txt");
    levelLog.createLogfile("levelDebug.txt");
    levelLog.setLogPriority(DEBUG_LEVEL_RIDICULOUS);
    level.setLogger(&levelLog);
    levelTextures.setTextureProvider(&level.textures);
    levelTextures.setD3D(&d3d);

    if(QDir("./settings").exists())
    {
        mainLog.Log("Settings folder exists in working directory, settings will be saved portably.");
        if(!QDir("./settings/User").exists())
            QDir().mkdir("./settings/User");
        if(!QDir("./settings/System").exists())
            QDir().mkdir("./settings/System");
        QSettings::setPath(QSettings::IniFormat, QSettings::UserScope, "./settings/User");
        QSettings::setPath(QSettings::IniFormat, QSettings::SystemScope, "./settings/System");
    }
    else mainLog.Log("No settings folder found. Saving settings locally.");

#ifdef DEBUG_ENABLED
    mainLog.Log("Executable is a debug build.");
    setWindowTitle(QApplication::translate("windowtitle", "Driver Level Editor [DEBUG][*]"));
#else
    mainLog.Log("Executable is a release build.");
    setWindowTitle(QApplication::translate("windowtitle", "Driver Level Editor[*]"));
#endif

#ifdef FREEIMAGE_LIB
    mainLog.Log("FreeImage is static linked.");
	FreeImage_Initialise();
#endif
    FreeImageLogger = &mainLog;
    FreeImage_SetOutputMessage(FreeImageErrorHandler);
    mainLog.Log("FreeImage version: %s",FreeImage_GetVersion());
    mainLog.Log("%s",FreeImage_GetCopyrightMessage());

    mainLog.Log("Initializing widgets...");

    centralWindow = new QStackedWidget(this);
    startPage = new StartScreen(this);
    customLevelDialog = new CustomLevelDialog(this);
    aboutDialog = new AboutDialog(this);
    //TODO: Enter final about information
    aboutDialog->setDescription(tr("Description goes here!"));
    aboutDialog->setInformation(tr("Information goes here!"));
    aboutDialog->setThanks(tr("Thanks goes here!"));
    aboutDialog->setImage("data/about.png");

    modelViewPanel = new ModelViewPanel(this, NULL, 0, &mainLog);
    modelViewPanel->setLevel(&level);
    modelViewPanel->setTextureProvider(&levelTextures);

    definitionEditor = new TextureDefinitionEditor(this, modelViewPanel->glViewer()); //Don't forget, this needs a share widget when model viewing is done
    definitionEditor->setLevel(&level);
    definitionEditor->setTextureProvider(&levelTextures);
    definitionEditor->overlay()->makeCurrent();

    textureBrowser = new TextureBrowser(this, modelViewPanel->glViewer());
    textureBrowser->setLevel(&level);
    textureBrowser->setTextureList(&levelTextures);
    textureBrowser->setD3D(&d3d);

    levelLoader = new LevelLoadingDialog(this);
    levelLoader->setLevel(&level);
    levelLoader->setD3D(&d3d);
    levelLoader->setWheelDefinitions(&wheels);
    levelLoader->setPlayerCosmetics(&playerCosmetics);
    levelLoader->setCivilianCosmetics(&civilianCosmetics);
    levelLoader->setPlayerDenting(&playerDenting);
    levelLoader->setCivilianDenting(&civilianDenting);
    levelLoader->setLog(&mainLog);

    saveDialog = new SaveAsDialog(this);
    connect(saveDialog, SIGNAL(saveLevel(QString,unsigned int)), this, SLOT(saveLevel(QString,unsigned int)));
    connect(saveDialog, SIGNAL(saveD3D(QString)), this, SLOT(saveD3D(QString)));
    connect(saveDialog, SIGNAL(savePlayerDenting(QString)), this, SLOT(savePlayerDenting(QString)));
    connect(saveDialog, SIGNAL(saveCivilianDenting(QString)), this, SLOT(saveCivilianDenting(QString)));
    connect(saveDialog, SIGNAL(savePlayerCosmetics(QString)), this, SLOT(savePlayerCosmetics(QString)));
    connect(saveDialog, SIGNAL(saveCivilianCosmetics(QString)), this, SLOT(saveCivilianCosmetics(QString)));
    connect(saveDialog, SIGNAL(saveWheelDefinitions(QString)), this, SLOT(saveWheelDefinitions(QString)));

    createActions();
    createMenus();
    textureBrowser->setupEditMenu(editMenu);
    setConvenienceActionsEnabled(false);

    centralWindow->addWidget(startPage);
    centralWindow->addWidget(modelViewPanel);
    centralWindow->addWidget(textureBrowser);
    centralWindow->addWidget(definitionEditor);
    statusBar();
    setCentralWidget(centralWindow);

    mainLog.Log("Finished initializing widgets.");

    loadSettings();
    show();
};
    FreeGlutGLView* FreeGlutGLView::start(void* _renderer, std::string name, int _width, int _height) {
		printf("freglutglview start");
	    renderer = (RendererWin32*) _renderer;

	    /* annoying useless setup for glutInit */

		char* argv[] = {_strdup(name.c_str())};
	    int argc = 1;
	
	    glutInit(&argc, argv);
	    glutInitContextVersion(3,3);
		
		printf("freglutglview start");
		glutInitWindowSize(_width, _height);
	    glutCreateWindow(name.c_str());

		//glew initialization
		glewExperimental = GL_TRUE;
		GLenum err = glewInit();
		if (GLEW_OK != err)	{
			cerr << "Error: " << glewGetErrorString(err) << endl;
		}
		else {
			if (GLEW_VERSION_3_3) {
				cout << "Driver supports OpenGL 3.3\nDetails:" << endl;
			}
		}
		err = glGetError(); //this is to ignore INVALID ENUM error 1282
	//	GL_CHECK_ERRORS


			//output hardware information
		cout << "\tUsing GLEW " << glewGetString(GLEW_VERSION) << endl;
		cout << "\tVendor: " << glGetString(GL_VENDOR) << endl;
		cout << "\tRenderer: " << glGetString(GL_RENDERER) << endl;
		cout << "\tVersion: " << glGetString(GL_VERSION) << endl;
		cout << "\tGLSL: " << glGetString(GL_SHADING_LANGUAGE_VERSION) << endl;

		// call this ONLY when linking with FreeImage as a static library
		
		#ifdef FREEIMAGE_LIB
				FreeImage_Initialise();
				cout << "\tFreeImage: " << FreeImage_GetVersion() << endl;
		#endif
		

    //	glutGameModeString("1280x1024:32@60");
    //	glutEnterGameMode();
		
		renderer->setStartTick();
	    renderer->onCreate();

	    glutDisplayFunc(&display);
	    glutReshapeFunc(&reshape);
		glutKeyboardFunc(&keyboard);
	    glutMouseFunc(&pressed);
	    glutMotionFunc(&dragged);
	    glutPassiveMotionFunc(&moved);
		glutIdleFunc(&animate);
		printf("freglutglview start");
		//lastTime = std::clock();
		//std::time(&lastTime);
	    //gettimeofday(&lastTime, NULL);
		printf("freglutglview start");
	    glutMainLoop();

	    //glutInitDisplayMode(GL_RGBA);
	    //glutInitWindowSize(200,200);
	    //glutCreateWindow("test");
		printf("freglutglview start");
	    return NULL;
	    //return glView;
		
    }
int main(int argc, char *argv[]) {
	// call this ONLY when linking with FreeImage as a static library
#ifdef FREEIMAGE_LIB
	FreeImage_Initialise();
#endif // FREEIMAGE_LIB

	// initialize your own FreeImage error handler
	FreeImage_SetOutputMessage(FreeImageErrorHandler);

	// print version & copyright infos
	std::cout << "FreeImage version : " << FreeImage_GetVersion() << "\n"
	          << FreeImage_GetCopyrightMessage() << std::endl;

	if (argc < 4) {
		std::cerr << "Usage: taskcollector.exe <type> <width> <height> <outputfile> <inputfile1> [<input file2> ...]\n";
		return -1;
	}

	std::unique_ptr<TaskCollector> taskCollector;

	std::string command{argv[1]};
	if (command == "add") {
		taskCollector = std::make_unique<AddTaskCollector>();
	}
	else if (command == "paste") {
		taskCollector = std::make_unique<PasteTaskCollector>();
	}
	else {
		std::cerr << "Unknown command '" << command << "'. Allowed: 'add', 'paste'.\n";
		return -1;
	}
	taskCollector->set_width(std::stoi(argv[2]));
	taskCollector->set_height(std::stoi(argv[3]));
	//to be sure the ordering is proper
	std::sort(argv + 5, argv + argc);

	for (int i = 5; i < argc; ++i) {
		if (std::string(argv[i]).find("Alpha") == std::string::npos) {
			if (!taskCollector->addImgFile(argv[i])) {
				std::cerr << "Can't add file: " << argv[i] << "\n";
			}
		}
		else {
			if (!taskCollector->addAlphaFile(argv[i])) {
				std::cerr << "Can't add file: " << argv[i] << "\n";
			}
		}
	}

	std::string name{argv[4]};
	auto it = name.find_last_of('.');
	name = ( (it == std::string::npos) ? (name + ".exr") : (name.substr(0, it) + ".Alpha.exr") );

  bool saved = taskCollector->finalizeAndSave(argv[4]);
	// call this ONLY when linking with FreeImage as a static library
#ifdef FREEIMAGE_LIB
	FreeImage_DeInitialise();
#endif // FREEIMAGE_LIB
  if (saved)
    return 0;
  else
    return 1;
}
Example #14
0
int main()
{
	DIR *dirtry = NULL;
	api_config config_data;
	curl_version_info_data *curl_info_data;

	curl_global_init(CURL_GLOBAL_ALL);
	init_idname_mylist();
	FreeImage_Initialise(TRUE);
	FreeImage_SetOutputMessage(FreeImageErrorHandler);

	curl_info_data = curl_version_info(CURLVERSION_NOW);
	log_info("Imgur Folder2Album Uploader " VERSION_NUMBER);
	log_info("Using Curl %s", curl_info_data->version);
	log_info("Using FreeImage %s", FreeImage_GetVersion());

	memset(&config_data, 0, sizeof(api_config));

	if(!get_config_from_file(&config_data)) {
		if(CONFIG_FILE_DOESNOT_EXIST == last_error) {
			if(!get_imgur_pin(&config_data)) {
				return 1;
			}
			if(!get_access_token(&config_data)) {
				return 1;
			}
			if(!save_config_data(&config_data)) {
				return 1;
			}
		}
	}
	log_info("Welcome %s", config_data.account_username);
	if(!load_idname() && CANT_OPEN_FILE == last_error) {
		log_info("File " ALBUM_DATA_FILE " does not exist.");
	}

	while(NULL == (dirtry = opendir(config_data.images_directory))) {
		log_err("Could not open dir %s\n", config_data.images_directory);
		get_imgur_dir(&config_data);
	}
	closedir(dirtry);

	if(!save_config_data(&config_data)) {
		return 1;
	}

	file_finder(&config_data, config_data.images_directory, NULL);

	curl_global_cleanup();
	FreeImage_DeInitialise();
	if(!save_config_data(&config_data)) {
		return 1;
	}
	if(!save_idname()) {
		return 1;
	}
// 	print_albuns();
	kill_idname_mylist();
	log_info("Bye");
	return 0;
}
Example #15
0
std::wstring get_version()
{
	return widen(std::string(FreeImage_GetVersion()));
}
Example #16
0
int 
main(int argc, char *argv[]) {

	const char *input_dir = "d:\\images\\";
	FIBITMAP *dib = NULL;
	int id = 1;

	// call this ONLY when linking with FreeImage as a static library
#ifdef FREEIMAGE_LIB
	FreeImage_Initialise();
#endif // FREEIMAGE_LIB

	// initialize your own FreeImage error handler

	FreeImage_SetOutputMessage(FreeImageErrorHandler);

	// print version & copyright infos

	printf(FreeImage_GetVersion());
	printf("\n");
	printf(FreeImage_GetCopyrightMessage());
	printf("\n");

	// open the log file

	FILE *log_file = fopen("log_file.txt", "w");

	// batch convert all supported bitmaps

	_finddata_t finddata;
	long handle;
	char image_path[MAX_PATH];

	// scan all files
	strcpy(image_path, input_dir);
	strcat(image_path, "*.*");

	if ((handle = _findfirst(image_path, &finddata)) != -1) {
		do {
			// make a path to a directory

			char *directory = new char[MAX_PATH];
			strcpy(directory, input_dir);
			strcat(directory, finddata.name);

			// make a unique filename

			char *unique = new char[128];
			itoa(id, unique, 10);
			strcat(unique, ".png");

			// open and load the file using the default load option
			dib = GenericLoader(directory, 0);

			if (dib != NULL) {
				// save the file as PNG
				bool bSuccess = GenericWriter(dib, unique, PNG_DEFAULT);

				// free the dib
				FreeImage_Unload(dib);

				if(bSuccess) {
					fwrite(unique, strlen(unique), 1, log_file);
				} else {
					strcpy(unique, "FAILED");
					fwrite(unique, strlen(unique), 1, log_file);
				}
				fwrite(" >> ", 4, 1, log_file);
				fwrite(directory, strlen(directory), 1, log_file);
				fwrite("\n", 1, 1, log_file);

				id++;
			}

			delete [] unique;
			delete [] directory;

		} while (_findnext(handle, &finddata) == 0);

		_findclose(handle);
	}

	fclose(log_file);

	// call this ONLY when linking with FreeImage as a static library
#ifdef FREEIMAGE_LIB
	FreeImage_DeInitialise();
#endif // FREEIMAGE_LIB

	return 0;
}
Example #17
0
int 
main(int argc, char *argv[]) {
	
	// call this ONLY when linking with FreeImage as a static library
#ifdef FREEIMAGE_LIB
	FreeImage_Initialise();
#endif // FREEIMAGE_LIB

	// initialize your own FreeImage error handler

	FreeImage_SetOutputMessage(FreeImageErrorHandler);

	// print version & copyright infos

	printf(FreeImage_GetVersion());
	printf("\n");
	printf(FreeImage_GetCopyrightMessage());
	printf("\n");


	if(argc != 2) {
		printf("Usage : LoadFromHandle <input file name>\n");
		return 0;
	}

	// initialize your own IO functions

	FreeImageIO io;

	io.read_proc  = myReadProc;
	io.write_proc = myWriteProc;
	io.seek_proc  = mySeekProc;
	io.tell_proc  = myTellProc;

	FILE *file = fopen(argv[1], "rb");

	if (file != NULL) {
		// find the buffer format
		FREE_IMAGE_FORMAT fif = FreeImage_GetFileTypeFromHandle(&io, (fi_handle)file, 0);

		if(fif != FIF_UNKNOWN) {
			// load from the file handle
			FIBITMAP *dib = FreeImage_LoadFromHandle(fif, &io, (fi_handle)file, 0);

			// save the bitmap as a PNG ...
			const char *output_filename = "test.png";

			// first, check the output format from the file name or file extension
			FREE_IMAGE_FORMAT out_fif = FreeImage_GetFIFFromFilename(output_filename);

			if(out_fif != FIF_UNKNOWN) {
				// then save the file
				FreeImage_Save(out_fif, dib, output_filename, 0);
			}

			// free the loaded FIBITMAP
			FreeImage_Unload(dib);
		}
		fclose(file);
	}

	// call this ONLY when linking with FreeImage as a static library
#ifdef FREEIMAGE_LIB
	FreeImage_DeInitialise();
#endif // FREEIMAGE_LIB

	return 0;
}
int 
main(int argc, char *argv[]) {
	
	// call this ONLY when linking with FreeImage as a static library
#ifdef FREEIMAGE_LIB
	FreeImage_Initialise();
#endif // FREEIMAGE_LIB

	// initialize your own FreeImage error handler

	FreeImage_SetOutputMessage(FreeImageErrorHandler);

	// print version & copyright infos

	printf("FreeImage version : %s", FreeImage_GetVersion());
	printf("\n");
	printf(FreeImage_GetCopyrightMessage());
	printf("\n");

	

	if (argc < 4)  {
		printf("Usage: taskcollector.exe <type> <outputfile> <inputfile1> [<input file2> ...]\n");
		return -1;
	}

	TaskCollector *taskCollector;

	if (strcmp(argv[1], "pbrt") == 0) {
		taskCollector = &(PbrtTaskCollector());
	} else if (strcmp(argv[1], "mr") == 0) {
		taskCollector = &(MentalRayTaskCollector());
	} else {
		printf("Possible types: 'mr', 'pbrt'\n");
		return -1;
	}


	for (int i = 3; i < argc; i++) {
		if (! taskCollector->addImgFile(argv[i])) {
			printf("Can't add file: %s\n", argv[i]);
		}
	}
	/*char text[14];
	sprintf_s(text, (size_t) 14, "temp0000%d.exr", 1);
	printf("%s\n", text);
	for (int i = 0; i < 10; i++) {
		sprintf_s(text, 14, "temp0000%d.exr", i);
		printf("%s\n", text);
		if (! pbrtTC.addImgFile(text)) {
			printf("appendTask error %s\n", text);
		}
	}
	for (int i = 10; i < 60; i++) {
		sprintf_s(text, 14, "temp000%d.exr", i);
		printf("%s\n", text);
		if (! pbrtTC.addImgFile(text)) {
			printf("appendTask error %s\n", text);
		}
	}
	*/

	FIBITMAP *finalImage = taskCollector->finalize();
	taskCollector->finalizeAndSave(argv[2]); 

	
	// call this ONLY when linking with FreeImage as a static library
#ifdef FREEIMAGE_LIB
	FreeImage_DeInitialise();
#endif // FREEIMAGE_LIB

	return 0;
}