@@ -2142,7 +2142,7 @@ auto CAssetConverter::reserve(const SInputs& inputs) -> SReserveResult
2142
2142
{
2143
2143
for (auto & entry : conversionRequests)
2144
2144
for (auto i=0ull ; i<entry.second .copyCount ; i++)
2145
- assign.operator ()<true >(entry.first ,entry.second .firstCopyIx ,i,device->createSampler (entry.second .canonicalAsset ->getParams ()));
2145
+ assign.template operator ()<true >(entry.first ,entry.second .firstCopyIx ,i,device->createSampler (entry.second .canonicalAsset ->getParams ()));
2146
2146
}
2147
2147
if constexpr (std::is_same_v<AssetType,ICPUBuffer>)
2148
2148
{
@@ -2461,7 +2461,7 @@ auto CAssetConverter::reserve(const SInputs& inputs) -> SReserveResult
2461
2461
{
2462
2462
// since we don't have dependants we don't care about our group ID
2463
2463
// we create threadsafe pipeline caches, because we have no idea how they may be used
2464
- assign.operator ()<true >(entry.first ,entry.second .firstCopyIx ,i,device->createPipelineCache (asset,false ));
2464
+ assign.template operator ()<true >(entry.first ,entry.second .firstCopyIx ,i,device->createPipelineCache (asset,false ));
2465
2465
}
2466
2466
}
2467
2467
}
@@ -2506,7 +2506,7 @@ auto CAssetConverter::reserve(const SInputs& inputs) -> SReserveResult
2506
2506
{
2507
2507
// since we don't have dependants we don't care about our group ID
2508
2508
// we create threadsafe pipeline caches, because we have no idea how they may be used
2509
- assign.operator ()<true >(entry.first ,entry.second .firstCopyIx ,i,device->createRenderpass (asset->getCreationParameters ()));
2509
+ assign.template operator ()<true >(entry.first ,entry.second .firstCopyIx ,i,device->createRenderpass (asset->getCreationParameters ()));
2510
2510
}
2511
2511
}
2512
2512
}
@@ -2653,7 +2653,7 @@ auto CAssetConverter::reserve(const SInputs& inputs) -> SReserveResult
2653
2653
gpuObj.get ()->setObjectDebugName (debugName.str ().c_str ());
2654
2654
}
2655
2655
// insert into staging cache
2656
- stagingCache.emplace (gpuObj.get (),CCache<AssetType>::key_t (contentHash,uniqueCopyGroupID));
2656
+ stagingCache.emplace (gpuObj.get (),typename CCache<AssetType>::key_t (contentHash,uniqueCopyGroupID));
2657
2657
// propagate back to dfsCache
2658
2658
created.gpuObj = std::move (gpuObj);
2659
2659
// record if a device memory allocation will be needed
@@ -2668,11 +2668,11 @@ auto CAssetConverter::reserve(const SInputs& inputs) -> SReserveResult
2668
2668
// this is super annoying, was hoping metaprogramming with `has_type` would actually work
2669
2669
auto getConversionRequests = [&]<typename AssetU>()->auto &{return std::get<SReserveResult::conversion_requests_t <AssetU>>(retval.m_conversionRequests );};
2670
2670
if constexpr (std::is_same_v<AssetType,ICPUBuffer>)
2671
- getConversionRequests.operator ()<ICPUBuffer>().emplace_back (core::smart_refctd_ptr<const AssetType>(instance.asset ),created.gpuObj .get ());;
2671
+ getConversionRequests.template operator ()<ICPUBuffer>().emplace_back (core::smart_refctd_ptr<const AssetType>(instance.asset ),created.gpuObj .get ());;
2672
2672
if constexpr (std::is_same_v<AssetType,ICPUImage>)
2673
2673
{
2674
2674
const uint16_t recomputeMips = created.patch .recomputeMips ;
2675
- getConversionRequests.operator ()<ICPUImage>().emplace_back (core::smart_refctd_ptr<const AssetType>(instance.asset ),created.gpuObj .get (),recomputeMips);
2675
+ getConversionRequests.template operator ()<ICPUImage>().emplace_back (core::smart_refctd_ptr<const AssetType>(instance.asset ),created.gpuObj .get (),recomputeMips);
2676
2676
}
2677
2677
// TODO: BLAS and TLAS requests
2678
2678
}
@@ -2939,7 +2939,7 @@ auto CAssetConverter::reserve(const SInputs& inputs) -> SReserveResult
2939
2939
// if something with this content hash is in the stagingCache, then it must match the `found->gpuObj`
2940
2940
if (auto finalCacheIt=stagingCache.find (gpuObj.get ()); finalCacheIt!=stagingCache.end ())
2941
2941
{
2942
- const bool matches = finalCacheIt->second ==CCache<AssetType>::key_t (found.contentHash ,uniqueCopyGroupID);
2942
+ const bool matches = finalCacheIt->second ==typename CCache<AssetType>::key_t (found.contentHash ,uniqueCopyGroupID);
2943
2943
assert (matches);
2944
2944
}
2945
2945
}
0 commit comments