02-13-2015 05:05 AM
Having a helper loop in the actor core's override is the nastiest thing in Actor Framework. Once you'll be ok with it, the other parts will be natural and easy
02-13-2015 02:27 PM
DMurrayIRL wrote:
Just a quick reply for now as it's late here... komorbela, your post makes me realise that I've been thinking about AF all wrong. I thought the point was to override the actor core, and do all your messaging from within a loop in the override.
It is generally better if you can do it all within the handling loop, just because it keeps your code much MUCH simpler. But don't treat that as a straightjacket -- that is the trap. Having a parallel loop in Actor Core was the big mental breakthrough that made the Actor Framework what it is. In all other programming languages that I know of, their equivalent of the Call Parent Node is a synchronous function call that is mutually exclusive with the code in the override. You have code before or after calling the parent. In LabVIEW, we can have code *during* the call to the parent. That was somewhat revolutionary. It meant that we could churn along on some task without messing with the messaging loop. Sure, it means you have to establish some communications channels, but the cleanliness of the rest of the diagram is well worth that bit of annoyance. And someday I hope we have a mechanism to automate the creation of that communication channel between the loops. Research is in progress.
DMurrayIRL wrote:
So I'm left with a sinking feeling that I'm pretty much back to square one... Anyway, I'll have a better look through your post tomorrow.
No no no! Not square one. Level two!!!! Onward and upward!
02-13-2015 03:23 PM
Okay guys, thanks everyone for the replies. I'm not going to reply to any of the points raised, as I really do need to step back and re-calibrate my thinking a bit. But I've picked up a lot from this thread, so thanks again for the help.