This Visualisation Library signaling protocol provides the interface between an LCD controller peripheral (for example the PL110) and a visualization component. This permits the LCD controller to render the framebuffer contents into a region of the visualization GUI.
LISA visualization components can provide any number of LCD ports. The implementations of these behaviors can delegate the calls to appropriate methods on the VisRenderRegion class.
See the source code of the PhoneVisualisation.lisa component for an example of implementing the LCD protocol.
The behaviors are:
lock() : VisRasterLayout *
- Lock the raster region of the LCD in preparation for rendering.
- Unlock the raster region, ready to be updated on the screen.
update(int x, int y, unsigned int w, unsigned int h)
- Update the selected rectangular area on screen from the raster buffer.
setPreferredLayout(unsigned int width, unsigned int height, unsigned int depth)
- A request from the LCD controller to set the preferred size for the raster region, to match the timing parameters used by the LCD controller.