MCPcopy Create free account
hub / github.com/DragonJoker/RenderGraph / createViewId

Method createViewId

source/RenderGraph/ResourceHandler.cpp:140–163  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

138 }
139
140 BufferViewId ResourceHandler::createViewId( BufferViewData const & view )
141 {
142 lock_type lock( m_bufferViewsMutex );
143 auto it = std::find_if( m_bufferViewIds.begin()
144 , m_bufferViewIds.end()
145 , [&view]( BufferViewIdDataOwnerCont::value_type const & lookup )
146 {
147 return *lookup.second == view;
148 } );
149 BufferViewId result{};
150
151 if ( it == m_bufferViewIds.end() )
152 {
153 auto data = std::make_unique< BufferViewData >( view );
154 result = BufferViewId{ uint32_t( m_bufferViewIds.size() + 1u ), data.get() };
155 m_bufferViewIds.try_emplace( result, std::move( data ) );
156 }
157 else
158 {
159 result = it->first;
160 }
161
162 return result;
163 }
164
165 ResourceHandler::CreatedT< VkBuffer > ResourceHandler::createBuffer( GraphContext & context
166 , BufferId bufferId )

Callers 3

createViewMethod · 0.80
TESTFunction · 0.80
TESTFunction · 0.80

Calls 4

beginMethod · 0.80
sizeMethod · 0.80
endMethod · 0.45
getMethod · 0.45

Tested by 2

TESTFunction · 0.64
TESTFunction · 0.64