MCPcopy Create free account
hub / github.com/cutdigital/mcut / mcEnqueueGetConnectedComponentData

Function mcEnqueueGetConnectedComponentData

source/mcut.cpp:742–789  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

740}
741
742MCAPI_ATTR McResult MCAPI_CALL mcEnqueueGetConnectedComponentData(
743 const McContext context,
744 const McConnectedComponent connCompId,
745 McFlags queryFlags,
746 McSize bytes,
747 McVoid* pMem,
748 McSize* pNumBytes,
749 uint32_t numEventsInWaitlist,
750 const McEvent* pEventWaitList,
751 McEvent* pEvent)
752{
753 McResult return_value = McResult::MC_NO_ERROR;
754 per_thread_api_log_str.clear();
755
756 if (context == nullptr) {
757 per_thread_api_log_str = "context ptr (param0) undef (NULL)";
758 }
759 if (connCompId == nullptr) {
760 per_thread_api_log_str = "connected component ptr (param1) undef (NULL)";
761 } else if (queryFlags == 0) {
762 per_thread_api_log_str = "flags (param1) undef (0)";
763 } else if (bytes != 0 && pMem == nullptr) {
764 per_thread_api_log_str = "null parameter (param3 & param4)";
765 } else if (pEventWaitList == nullptr && numEventsInWaitlist > 0) {
766 per_thread_api_log_str = "invalid event waitlist ptr (NULL)";
767 } else if (pEventWaitList != nullptr && numEventsInWaitlist == 0) {
768 per_thread_api_log_str = "invalid event waitlist size (zero)";
769 } else if (pEventWaitList == nullptr && numEventsInWaitlist == 0 && pEvent == nullptr) {
770 per_thread_api_log_str = "invalid event ptr (zero)";
771 } else {
772 try {
773 get_connected_component_data_impl(context, connCompId, queryFlags, bytes, pMem, pNumBytes, numEventsInWaitlist, pEventWaitList, pEvent);
774 }
775 CATCH_POSSIBLE_EXCEPTIONS(per_thread_api_log_str);
776 }
777
778 if (!per_thread_api_log_str.empty()) {
779
780 std::fprintf(stderr, "%s(...) -> %s\n", __FUNCTION__, per_thread_api_log_str.c_str());
781
782 if (return_value == McResult::MC_NO_ERROR) // i.e. problem with basic local parameter checks
783 {
784 return_value = McResult::MC_INVALID_VALUE;
785 }
786 }
787
788 return return_value;
789}
790
791MCAPI_ATTR McResult MCAPI_CALL mcGetConnectedComponentData(
792 const McContext context,

Callers 2

mainFunction · 0.85

Calls 2

emptyMethod · 0.45

Tested by

no test coverage detected