21 lines
474 B
C++
21 lines
474 B
C++
#pragma once
|
|
|
|
#include <Orange/Core/Traits.h>
|
|
|
|
namespace orange
|
|
{
|
|
template <typename Func, typename OutArray, typename... Args>
|
|
uint32_t VkEnumerate(Func function, OutArray& outArray, Args&&... arguments)
|
|
{
|
|
uint32_t count = 0;
|
|
function(arguments..., &count, nullptr);
|
|
|
|
outArray.Resize(count);
|
|
if (!count)
|
|
return 0;
|
|
|
|
function(Forward<Args>(arguments)..., &count, outArray.Data());
|
|
return count;
|
|
}
|
|
}
|