
 *** tclbin *** : Extension to access any binary data and structure
 from Tcl --  by Laurent Demailly

This is the seventh public release of the TclBin extension (see the Changes
file for changes) and First NON BETA !

Now a loadable module of tcl7.5, with full documentation (including 
C API), auto configuration and tests !

In short, infos on 
  
  http://www.lyot.obspm.fr/~dl/tclbin.html
  (with pointer to the complete documentation in dvi or postscript)

Latest source tar on

  ftp://ftp.lyot.obspm.fr/tcl/tclbin.tar.gz
  (currently a link to tclbin-1.0.tar.gz including the
   doc/ directory with libtclbin.{tex,dvi,ps} and man pages)

And if everything goes well on 
  ftp://ftp.neosoft.com/pub/tcl/alcatel/extensions/tclbin-1.0.tar.gz

 very short sample tcl use :

 bin_new toto double* [bin_sizeof double]*8;
 bin_def toto i int 0;
 bin_def toto s short 1;

 set toto(0) 5.25
 set toto(1) -1.38
 format %x $toto(i)
 -> 40150000
 format %x $toto(s)
 -> 1500  (and no core dump though the short is not properly aligned !)
 set toto(s) 123
 set toto(0)
 -> 2.06006 (your mileage may vary if your doubles aren't IEEE...)

You can also bin_write and bin_read (including new Tcl_Channel when
you have tcl7.5), define pointers and move them (with checks of
bounds!) , dump hex or string your objects (puts $toto(_str_)...) and
a lot more !!! 

Lastly, something I find cool : if you do a bin_new xxx in a proc,
when you get out  of the proc, Tcl unsets xxx and my package frees the
memory automagically !  (temporary buffers etc... are automatically
freed for you...(use upvar to  keep the data))

I hope you'll like the stuff... 
It is finally out of beta status, I think that you can now install and
use it easily, the  documentation is now (i think) usuable. 
Very special thank to Dimitry Kloper who wrote most of the initial
documentation.
Special thank to all beta testers and specially to Zachary T. Frey
and Martin Cornelius.

As the extension is being used intensively for almost two years,  I
dare think the core is pretty bug free! (The compilation/configure
process is much newer, I hope it is ok, send feedback!)

Please send me your feed back, suggestions, bug reports, etc...
dl@hplyot.obspm.fr

You can also subscribe to the "tclbin" list by sending 
"subscribe tclbin your name" as the mail body of a mail sent to
listserv@hplyot.obspm.fr (for me it was :
echo "subscribe tclbin Laurent Demailly" | mail listserv@hplyot.obspm.fr

Hope this helps,

dl
--
Laurent Demailly * http://hplyot.obspm.fr/~dl/ * Pobox email: dl@mail.dotcom.fr
