22 return "Swapchain_" + std::to_string(
reinterpret_cast<uintptr_t
>(swapchain));
45 auto& tickerGraph =
m_context->submitTickers();
58 for (
auto wnd :
m_context->getBindWindows())
77 img->
samples(savedImg->samples());
79 img->width(savedImg->width());
80 img->height(savedImg->height());
81 img->imageCount(savedImg->imageCount());
89 img->
samples(savedImg->samples());
91 img->width(savedImg->width());
92 img->height(savedImg->height());
165 img->width(desc.
width);
167 img->imageCount(
m_context->maxFrameInFlight());
SubscribeId subscribe(Func &&func)
virtual void resize(uint32_t width, uint32_t height)=0
void changeCurrentIndex(int index)
virtual FCT::Image * image() const =0
void resizeSub(std::string token, int width, int height)
void resize(std::string token, int width, int height)
ResourceManager(Context *ctx)
TokenGraph< std::string, ImageSaved > m_dependencyGraph
void registerWindow(Window *wnd)
void resizeImage(std::string name, int width, int height)
挂起resize一个image
Image * allocateTarget(std::string name, TargetDesc desc)
分配的是独立的Target,例如窗口一类的就算为独立Target
std::vector< ImageSaved > m_needChangeIndexImages
Image * allocateImage(std::string name, Window *dependency, ImageDesc desc)
分配中间Target / 图像
Device * m_resourceDevice
RHI::Swapchain * swapchain() const
constexpr const char * ImageGraph_ChangeIndex
std::string WindowToToken(Window *wnd)
constexpr const char * SwapBufferSubmitTicker
std::string SwapchainToToken(RHI::Swapchain *swapchain)
ImageSaved(RHI::Swapchain *swapchain)