Example #1
0
		Ref<Image> Image::load_from_data (const Ptr<IData> data) {
			static Stopwatch t;
			static unsigned count = 0; ++count;

			Ref<Image> loaded_image;
			Shared<Buffer> buffer;

			t.start();

			buffer = data->buffer();

			switch (buffer->mimetype()) {
			case IMAGE_JPEG:
				loaded_image = load_jpeg_image(data);
				break;
			case IMAGE_PNG:
				loaded_image = load_png_image(data);
				break;
			//case Data::IMAGE_DDS:
			//	loaded_image = load_ddsimage(data);
			default:
				logger()->log(LOG_ERROR, "Could not load image: Unsupported image format.");
			}

			t.pause();

			logger()->log(LOG_INFO, LogBuffer() << "*** Total time to load " << count << " images: " << t.time() << "s");

			return loaded_image;
		}
Example #2
0
		Ref<Object> Sound::Loader::load_from_data (const Ptr<IData> data, const ILoader * loader)
		{
			Shared<Buffer> buffer = data->buffer();

			Mimetype mt = buffer->mimetype();

			if (mt == AUDIO_XWAV) {
				return load_wave_data(data);
			} else {
				throw LoadError("Could not load audio data");
			}
		}