A few days ago, I spoke about OpenShiva, since then I have added quiet a few features, since OpenShiva can now read images, and work with different bit depth than float 32bits, I have also found a lot of bugs that are now fixed (and are covered by automatic tests ! yay !).
Now, there are all the basic features to demonstrate the technology, so it’s about time to make a release. Especially that a new release of llvm has been made early June, and since they make a point to have weird API/ABI breakage at each release: before to create most instructions you would write “new InstructionName(params);” and now it is “InstructionsName::Create(params);” except for a few instructions were the old style is still in use… That said, without llvm, I would have been unable to achieve what I have achieve until now with OpenGTL.
So here comes two releases, 0.9.3 for llvm 2.2 and 0.9.4 for llvm 2.3, they have both the same feautres sets.
Beside a lot of bug fixes, and the early implementation of OpenShiva, OpenCTL has matured a lot, and now most of the standard library is implemented (it remains a very complex function that is underspecified and some color conversion functions). And there is also a nice debug system that allows to control output depending on library, file name and function name, which is nice, since OpenGTL, in debug mode, is very noisy (but it’s all needed when debugging).
If you want to have fun, you can download everything here.