本文整理汇总了C++中Asset::getIOStream方法的典型用法代码示例。如果您正苦于以下问题:C++ Asset::getIOStream方法的具体用法?C++ Asset::getIOStream怎么用?C++ Asset::getIOStream使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Asset
的用法示例。
在下文中一共展示了Asset::getIOStream方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: TextureData
Texture::Texture(Asset file, GLenum textureTarget, GLfloat filter)
{
std::map<std::string, TextureData *>::const_iterator it = m_textureCache.find(file.getIOStream()->getFileName().c_str());
if(it != m_textureCache.end()) {
m_textureData = it->second;
m_textureData->incrementReference();
} else {
int x, y, bytesPerPixel;
unsigned char* data = stbi_load_from_memory(reinterpret_cast<const unsigned char *>(file.read()), file.getIOStream()->fileSize(), &x, &y, &bytesPerPixel, 4);
if(data == NULL) {
log_err("Unable to load texture: %s", file.getIOStream()->getFileName().c_str());
} else {
m_textureData = m_textureCache[file.getIOStream()->getFileName().c_str()] = new TextureData(x, y, data, textureTarget, filter);
stbi_image_free(data);
m_textureData->incrementReference();
}
}
}