This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Offscreen buffer and GrFlush

Tool/software: Starterware

Hi,

I'm currently developing a display driver to be used with the GrKib for a CVBS overlay generator. For that I want to use the offscreen buffer scheme provided by GrLib. I've investigated the qs-logger demo since it uses two offsreen buffers. Here GrImageDraw is used to write the content of the offscreen buffer to the physical display. How is the GrFluh function supposed to be used in tis scenario? All display drivers I've seen so far contain an empty GrFlush() function.

I would appreciate if someone could explain me how the GrFlush function is related to the Offscreen buffer conecpt.

Thank you! 

  • Hello Matthias

    On the TM4C129x there is a larger memory both on-chip and off-chip (via EPI). The GrFlush is primarily meant for such an operation. However since we see a lot of deployment on panels with in built buffer, it is normally easier to write to the panel's frame buffer rather than having an additional buffer.
  • Hi Amit,

    thank you very much for the quick response. I hope I understood this correct, if I want to write an display driver with the use of the GrFlush() function then all the other functions (like PixelDraw(), PixelDrawMultiple(), ...) should draw into a sperate buffer (in RAM or external over EPI) and then this buffer is written into the display by calling GrFlush()? Is there any difference by using the offscreen display driver provided by GrLib compared to the GrFlush scheme?

    Looking forward to your response.

    Happy new year! 

  • Hello Matthias

    An offscreen display driver allows to create multiple images that can be then refreshed on the screen without having to worry about active refresh of the panel and data write to the buffer in the screen causing false images (that may happen during a single frame)