MayaFlux 0.5.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ run() [1/2]

VisionResult MayaFlux::Yantra::VisionGpuExecutor::run ( const Kinesis::Vision::VisionSequence sequence,
const std::shared_ptr< Core::VKImage > &  image,
uint32_t  w,
uint32_t  h 
)

Execute a VisionSequence on the GPU using this instance's own lazily-constructed context set.

m_contexts is built on first call and reused for every subsequent call to this overload on the same VisionGpuExecutor instance. The primary entry point; prefer this over the explicit-contexts overload unless a caller specifically needs to inspect or share a VisionGpuContexts across multiple calls outside this class.

Parameters
sequenceOrdered steps to execute.
imageInput frame in eShaderReadOnlyOptimal layout.
wFrame width in pixels.
hFrame height in pixels.
Returns
VisionResult matching the VisionExecutor::run() contract.

Definition at line 1323 of file VisionGpuDispatch.cpp.

1327{
1328 if (!m_contexts)
1329 m_contexts = std::make_unique<VisionGpuContexts>();
1330
1331 return run(*m_contexts, sequence, image, w, h);
1332}
IO::ImageData image
Definition Decoder.cpp:64
uint32_t h
Definition InkPress.cpp:28
std::unique_ptr< VisionGpuContexts > m_contexts
void run()
Definition main.cpp:22

References h, image, and run().

+ Here is the call graph for this function: