PPL Plugins

I wrote previously about Tom and I’s Gang of Four project where we are creating GOF Examples in LabVIEW. We’ve been getting distracted a little lately, but I have finally found some time to get back to it. I thought I would share with you what I have been working on with regards to extending the factory into a PPL plugin architecture.

One of the first examples I did and one of the first many LabVIEW programmers learn is the factory pattern. While working on a basic factory pattern, I also added an example of using Matthias Baudot’s dynamic unloading of classes. Someone asked me to do an example of how to build the factory pattern into a plugin architecture. I finally got around to that.

It had been a while since I had do any plugin architecture work. The last time I did it I remember using straight classes and I have definitely used plain VI references beyore as well. This time I wanted to play around with PPLs and MGI Solution Explorer, since PPLs seem to be the standard now for plugins and the Solution Explorer seems to be the tool of choice for managing PPL builds. It was harder and more complicated than I remembered. It took longer than I had planned but I figured it out.

MGI Solution Explorer Window

The solution is available on GitLab. The new plugin part is under the PPL Exe directory. I do need to add more instructions, but in the meantime here is the short version. In the PPL Exe folder are 2 .lvsln files. Pick the correct one for your bitness. Open it and build it. That will put the exe and everything it needs into the builds directory. Then you can run the executable from there. It’s all open source. Everything is there for you to dive into. As far as creating a new plugin, I’ll leave that as an exercise to the reader.

If you want to learn how to build flexible, extendable architectures like this for your specific LabVIEW challenge, we can help. Let’s talk.