The bootloader may be applied in different environments, from a single 8-bit microcontroller up to a high complex system using multiple processors and flashable memory devices. 
The bootloader application layer collects a number of callback functions to adapt the Bootloader to the specific needs of the download process – from novice to an expert system.
The callback functions are partly pre-programmed for an easy startup and a well-documented interface and user manual helps you to implement these callbacks.