10-17-2016 06:21 PM
Jon and Varun,
It looks like the CAR was fixed from a LabVIEW standpoint, but still exists in DAQmx base. The latest version of DAQmx Base is still 15.0. I will need to talk to some of our developers to get more information about what might be going on here and potential fixes.
10-17-2016 06:44 PM
Hi Aaron,
Thank you for looking into this.
It appears that numerous users are running into this issue. Based on the multiple reports, and the results of compiling the source code posted in the other thread, NIDAQmx Base seems to be unusable from 64-bit applications on the Mac.
Have your R&D engineers tried implementing either one of my proposed solutions?
Option 1) The driver could check respondsToSelector of setHandler, before making the call. This could easily be implemented with code as described in this stackoverflow post:
http://stackoverflow.com/questions/3697058/when-to-use-respondstoselector-in-objective-c
Option 2) The driver could check the dynamic cast to your delegate; if it fails, the driver should avoid making the call to setHandler
A straightforward issue like this staying unresolved for years makes the NIDAQmx Base driver unusable by many software developers. I hope NI is able to resolve this issue in NIDAQmx Base in the 16.0 release for the Mac, or release a patch to NIDAQmx Base 15.0 on the Mac.
Sincerely,
-Vinod Cherian
MathWorks
10-17-2016 09:15 PM
If the driver implemented both (1) and (2) then the issue of someone defining their own handler that is incompatible with what the driver expects is also protected against.
It sounds like CAR #528664 was tracking a different, if related, problem in LabVIEW. Would you be able to escalate this to R&D and provide a new CAR# to track the issue in NIDAQmx Base?
Thanks,
Vinod Cherian
MathWorks
10-19-2016 03:36 PM
Hi Vinod,
In order to file a CAR I will need some additional information about the behavior. What version of DAQmx Base and OSX are you using?
Can you provide some simplified steps to reproduce this behavior?
Thanks,
10-19-2016 04:24 PM
Hi Aaron,
All the information needed to reproduce the issue, including very simple source code is here:
We last tried it with NIDAQmx Base 14.0 OS X 10.11 El Capitan.
Please let us know what you hear back from R&D about this issue in NIDAQmx Base.
NOTE: A fix in LabVIEW does not resolve this for users building their own application that does not use LabVIEW.
Thank you!
-Vinod
10-21-2016 04:45 PM
Update: I am in contact with R&D with regards to filing a new CAR for this behavior. I will keep this thread updated when I have more information.
10-21-2016 05:59 PM
Thank you for bringing this to R&D's attention, Aaron.
You might want to let R&D know that multiple users are affected by this, as evidenced by the posts in this and the original thread.
Vinod Cherian
MathWorks
10-25-2016 11:33 AM
Update: A CAR (CAR# 611729) has been filed for this behavior and is being looked into by R&D. Thanks to all for your input!
10-26-2016 03:48 PM
I hope this will be fixed soon. The problem exists since many years with exact same reproduction steps!!!