Patent attributes
An example of a system for programming a neurostimulator may include a storage device and a user interface. The storage device may be configured to store waveform building blocks. The user interface may include a display screen, a user input device, and an interface control circuit. The interface control circuit may include a waveform composer configured to allow for composition of one of more building blocks and composition of a pattern of neurostimulation pulses using selected one or more waveform building blocks. The waveform composer may include a library controller and waveform building block editors. The library controller may be configured to display a library management area on the screen. The displayed library management area allows a user to manage the stored waveform building blocks. The waveform building block editors may each be configured to allow the user to compose a type of the waveform building blocks.