CISST Software Development Kit
& Methodology
THE PROBLEM THE SOLUTION
• Many software components can be common to • Rearchitecting CIS library to improve maintainability,
diverse CISST applications, but they must be: portability and usability.
• Portable (compilers and operating systems). • Library architecture safeguarded by CMake, CVS
• Modular, so that dependencies are minimized. • New modules for:
• Well documented. • Operating system abstraction
• Easily tested (e.g., for regression testing). • Unit testing framework based on CPPUNIT
• Researchers use C++ (sometimes Java), which • Use SWIG to automate wrapping of C++ code for
do not provide interactive development/scripting. interpreted languages (Python, TCL).
• Existing CIS library has been invaluable, but does • Online debugging and command-line interaction
not adequately address these needs. (see IRE)
• Redesign in testing for:
• Common data structures and tools
• Fixed size vectors
THE IMPACT • Other CIS modules (numerical methods, …) pending.
• Modular design of CISST permits rapid object-
orientated, “parts-assembly” style development
• Regular test builds ensure robustness TEST
RESULTS
• SWIG wrapping enables rapid prototyping and creation TEST
of interactive environments (see IRE) APPLICATIONS
• Innovative design of cisstVector based on template
meta-programming provides:
•Efficiency
•Scalability (different vector sizes) LIBRARY
BINARIES
•Different data types Robot &
•Stride Tracker
Applications
DOCUMENTATION
(Compiled LaTeX
Document)
Some other picture here. Maybe something for cisstVector?
PEOPLE INVOLVED
• Graduate Students: Ankur Kapoor, Andy LaMora, Ofri
Sadowsky, Anand Viswanathan
THE FUTURE
• Engineering Faculty: Peter Kazanzides, Russell Taylor
• Finish redesign of CIS library
• Staff: Anton Deguet, Csaba Csoma
• Submit publication describing cisstVector design
• Deploy software under open source license
SUPPORTED BY: PUBLICATIONS
• Core NSF CISST/ERC • There are publications that I will add later…
Engineering Research Center for Computer Integrated Surgical Systems and Technology