04-06-2020 05:14 PM
I am trying my first efforts at OOP with a simple HAL architecture. I am working in LV2018 SP1.
Top level: Instrument.class
Second level: I2C Interface.class
Third level: Aardvark.class
In my application, I:
If I double-click on I2C Intstrument.class:Reset.vi and I2C Instrument.class:Config.vi, I get the Select Implementation windows with the down-arrow and the correct child class functions visible and selectable. This leads me to believe that the dynamic dispatch is configured correctly.
When I breakpoint the Aardvark.class:Reset.vi and Aardvark.class:Config.vi classes and run, they are never executed.
When I breakpoint I2C Instrument.class:Reset.vi and I2C Instrument.class:Config.vi and run, these classes execute. Dynamic dispatch is not occurring.
I have tried both loading the Aardvark class from disk (Get LV Class Default Value) and by using a class constant directly on the block diagram. Neither method seems to allow dynamic dispatch to happen.
What might I be missing here? I have attached my source distribution to this message and would appreciate some guidance.
Solved! Go to Solution.
04-06-2020 05:48 PM - edited 04-06-2020 05:51 PM
You're missing a shift register. Writing to the Local variable doesn't do anything because it doesn't loop back around and change the input object.
Do this:
04-07-2020 07:18 AM