Download Latest Version encode_LV.zip (99.2 kB)
Email in envelope

Get an email when there's a new version of Encode_LV

Home
Name Modified Size InfoDownloads / Week
README 2021-02-04 2.5 kB
encode_LV.zip 2021-02-04 99.2 kB
Totals: 2 Items   101.7 kB 0
Author: Danny Holstein
email: dgholstein@gmail.com

These VIs provide C-based DLL access to ZLib (https://zlib.net/) and ASCII encode/decode. The VIs and
development files are included in this package.

There is no difference between the Windows and Linux version of this library, the VIs are identical, the DLLs compiled from the same source. 
The user may choose to compile his own dynamic library, encode_LVStr.so, or select a pre-compiled versions.

You are most likely to be running this from a Windows machine which means that loading the LabVIEW code will generate an error.  This is
due to the LabVIEW code pointing to the Linux SO instead of the DLL.  To fix it, double-click on the CLFN VIs and browse to DLL.

Prerequisites:
	LabView 7.1+
	
Notes:

	Version 1.00
		Written to work with XML - specifically to embed arbitrary binary or ASCII files as content in nodes
		The ZLib compression works to minimize large ASCII content while Base64/BinHex (recommend Base64) keeps the node as ASCII so as to not break the XML
		This can also be used with database BLOBs or TEXT
		Note ZIP compression isn't supported, though ZIP files can be encoded to embed in XML or in databases.

Make (Linux):
	Edit Makefile.unix, make sure the library paths for LabView
	Build with "make -f Makefile.unix" to make the SO.
	
Make (Windows):
	Edit Makefile.mak, make sure the library paths for LabView
	Build with "nmake -f Makefile.mak"

64-bit:
	You're on your own -- I only have worked with 32 bit versions of LabView.  Contact me if you have difficulty, I'll help where I can.
	
Editorial:

	You might ask yourself why not do all these operations in native LabVIEW?  Admittedly, yes it can be done - but I'm lazy, programmers
	have already done the heavy lifting and I'm not into re-inventing the wheel.  The other part of this is the ZLib library is well
	maintained and supported, I believe in leveraging the hard development work done before us, bugs and improvements are managed.
	It's superior code, those who contribute to this code base are versed in The Art of Computer Programming, they're anal.
	Finally, I tried writing some stuff in native LabVIEW, LabVIEW is good at the big stuff but terrible at bit/character-banging.  As you
	start parsing megabytes of data and have to use the LabVIEW memory functions** you find performance goes to hell - C code is orders
	of magnitude more efficient.

		** every node at loops, every feedback node, etcetera - forces the generation of a copy of the data	
Source: README, updated 2021-02-04