Hi Everyone
I’ve just completed a series of examples that demonstrate the SciWare GOOP approach. The examples show how inheritance, virtual functions and processes can create very flexible and powerful systems. There are three main examples.
1) The Store Demo which demononstrates the Store class. The Store class allows reading and writing 2D numeric data to a storage medium. The class contains two children called Store.SpreadSheet and Store.Binary. As their names suggest Store.SpreadSheet reads or writes to a spreadsheet and Store.Binary reads or writes to a binary file. This class could easily be extended via inheritance to handle additional storage mediums such as a database an Excel workbook or a buffer.
2) The Simple Logger Demo which demonstrates the SimpleLogger class. This class uses the Store class to log data and the DataIO class for acquisition. The DataIO class has several children that allow reading or writing of single point analog values from DataSocket, FieldPoint or DAQ, again easily extended to handle other IO. The SimpleLogger class accepts an array of DataIO objects and a Storage object, its process manages these objects so that data is logged to the store at the required interval.
3) The Pump Demo which demonstrates the Pump class. The Pump class has a child called Pump.Digital which effectively turns any digital device into a pump controller. The Pump.Digital class has methods to turn a pump on, off or to pump a desired volume. The Pump.Digital class accepts the DigitalIO class which has children that allow the reading or writing of digital states vi DataSocket, FieldPoint or DAQ, again additional children could be created to handle other digital forms. You could also extend the Pump class to handle other forms of pump ie pumps with serial interfaces or a pump driven by a counter timer for instance.
The examples are free to download and are written in LV 6.1.
To download the examples please visit my site.
www.sciware.com.au
Kurt Friday
www.sciware.com.au