MCPcopy Create free account
hub / github.com/RenderKit/oidn / oidnSetFilterImage

Function oidnSetFilterImage

api/api.cpp:870–890  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

868 }
869
870 OIDN_API void oidnSetFilterImage(OIDNFilter filterC, const char* name,
871 OIDNBuffer bufferC, OIDNFormat format,
872 size_t width, size_t height,
873 size_t byteOffset,
874 size_t pixelByteStride, size_t rowByteStride)
875 {
876 Filter* filter = reinterpret_cast<Filter*>(filterC);
877 OIDN_TRY
878 checkHandle(filterC);
879 OIDN_LOCK_DEVICE(filter);
880 checkString(name);
881 checkHandle(bufferC);
882 Ref<Buffer> buffer = reinterpret_cast<Buffer*>(bufferC);
883 if (buffer->getDevice() != filter->getDevice())
884 throw Exception(Error::InvalidArgument, "the specified objects are bound to different devices");
885 auto image = makeRef<Image>(buffer, static_cast<Format>(format),
886 static_cast<int>(width), static_cast<int>(height),
887 byteOffset, pixelByteStride, rowByteStride);
888 filter->setImage(name, image);
889 OIDN_CATCH_DEVICE(filter)
890 }
891
892 OIDN_API void oidnSetSharedFilterImage(OIDNFilter filterC, const char* name,
893 void* devPtr, OIDNFormat format,

Callers 1

setImageFunction · 0.85

Calls 5

checkStringFunction · 0.85
checkHandleFunction · 0.85
ExceptionFunction · 0.85
getDeviceMethod · 0.45
setImageMethod · 0.45

Tested by

no test coverage detected