MCPcopy Create free account
hub / github.com/AcademySoftwareFoundation/OpenImageIO / read

Method read

src/libtexture/imagecache.cpp:1229–1252  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1227
1228
1229void
1230ImageCacheTile::read (ImageCachePerThreadInfo *thread_info)
1231{
1232 size_t size = memsize_needed ();
1233 ASSERT (memsize() == 0 && size > 0);
1234 m_pixels.reset (new char [m_pixels_size = size]);
1235 ImageCacheFile &file (m_id.file());
1236 m_valid = file.read_tile (thread_info, m_id.subimage(), m_id.miplevel(),
1237 m_id.x(), m_id.y(), m_id.z(),
1238 file.datatype(m_id.subimage()), &m_pixels[0]);
1239 m_id.file().imagecache().incr_mem (size);
1240 if (! m_valid) {
1241 m_used = false; // Don't let it hold mem if invalid
1242#if 0
1243 std::cerr << "(1) error reading tile " << m_id.x() << ' ' << m_id.y()
1244 << ' ' << m_id.z()
1245 << " subimg=" << m_id.subimage()
1246 << " mip=" << m_id.miplevel()
1247 << " from " << file.filename() << "\n";
1248#endif
1249 }
1250 m_pixels_ready = true;
1251 // FIXME -- for shadow, fill in mindepth, maxdepth
1252}
1253
1254
1255

Callers 1

add_tile_to_cacheMethod · 0.45

Calls 12

fileFunction · 0.85
datatypeMethod · 0.80
incr_memMethod · 0.80
imagecacheMethod · 0.80
filenameMethod · 0.80
resetMethod · 0.45
read_tileMethod · 0.45
subimageMethod · 0.45
miplevelMethod · 0.45
xMethod · 0.45
yMethod · 0.45
zMethod · 0.45

Tested by

no test coverage detected