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; }
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"); } }