package fbdraw // FrameGenerator generates frames for a screen type FrameGenerator interface { // Init is called once when the screen is added to the carousel // width and height are the character dimensions that frames will be requested at Init(width, height int) error // GenerateFrame is called to render a new frame GenerateFrame(grid *CharGrid) error // FramesPerSecond returns the desired frame rate FramesPerSecond() float64 } // FramebufferDisplay interface represents the output device type FramebufferDisplay interface { // Write renders a grid to the display Write(grid *CharGrid) error // Size returns the display dimensions in characters Size() (width, height int) // PixelSize returns the display dimensions in pixels PixelSize() (width, height int) // Close cleans up resources Close() error }