calloc method
Implementation
Pointer<SdlGpuRenderStateCreateInfo> calloc() {
final pointer = ffi.calloc<SdlGpuRenderStateCreateInfo>();
pointer.ref.fragmentShader = fragmentShader;
if (samplerBindings.isNotEmpty) {
pointer.ref.numSamplerBindings = samplerBindings.length;
pointer.ref.samplerBindings = samplerBindings.calloc();
}
if (storageTextures.isNotEmpty) {
pointer.ref.numStorageTextures = storageTextures.length;
pointer.ref.storageTextures = ffi.calloc<Pointer<SdlGpuTexture>>(
storageTextures.length,
);
for (var i = 0; i < storageTextures.length; i++) {
pointer.ref.storageTextures[i] = storageTextures[i];
}
}
if (storageBuffers.isNotEmpty) {
pointer.ref.numStorageBuffers = storageBuffers.length;
pointer.ref.storageBuffers = ffi.calloc<Pointer<SdlGpuBuffer>>(
storageBuffers.length,
);
for (var i = 0; i < storageBuffers.length; i++) {
pointer.ref.storageBuffers[i] = storageBuffers[i];
}
}
pointer.ref.props = props;
return pointer;
}