Optix Code/Optix7.3.0LightFIeldViewer/SDK/lib/DemandLoading/Textures/DemandTextureImpl.cpp
// Request deduplication will ensure that concurrent calls to readMipTail do not occur.  Note that
// the EXRReader currently locks because the OpenEXR 2.x tile reading API is stateful.  That should
// be fixed in OpenEXR 3.0.
Request deduplication will ensure that concurrent calls to readMipTail do not occur.  Note that
the EXRReader currently locks because the OpenEXR 2.x tile reading API is stateful.  That should
be fixed in OpenEXR 3.0.
Request deduplication will ensure that concurrent calls to readMipTail do not occur . Note that the EXRReader currently locks because the OpenEXR 2 . x tile reading API is stateful . That should be fixed in OpenEXR 3 . 0 .
bool DemandTextureImpl::readMipTail( char* buffer, size_t bufferSize ) const
{
    DEMAND_ASSERT( m_isInitialized );
    DEMAND_ASSERT( getMipTailFirstLevel() < m_info.numMipLevels );
    DEMAND_ASSERT_MSG( m_mipTailSize <= bufferSize, "Maximum mip tail size exceeded" );
    const unsigned int pixelSize = getInfo().numChannels * getBytesPerChannel( getInfo().format );
    return m_image->readMipTail( buffer, getMipTailFirstLevel(), getInfo().numMipLevels, m_mipLevelDims.data(), pixelSize );
}
bool DemandTextureImpl :: readMipTail ( char * buffer , size_t bufferSize ) const { DEMAND_ASSERT ( m_isInitialized ) ; DEMAND_ASSERT ( getMipTailFirstLevel ( ) < m_info . numMipLevels ) ; DEMAND_ASSERT_MSG ( m_mipTailSize <= bufferSize , " " ) ; const unsigned int pixelSize = getInfo ( ) . numChannels * getBytesPerChannel ( getInfo ( ) . format ) ; return m_image -> readMipTail ( buffer , getMipTailFirstLevel ( ) , getInfo ( ) . numMipLevels , m_mipLevelDims . data ( ) , pixelSize ) ; }
Request deduplication will ensure that concurrent calls to readMipTail do not occur.
Request deduplication will ensure that concurrent calls to readMipTail do not occur .