MipiDisplay.h
Go to the documentation of this file.
267 int readDataBuffer(ReadBuffer& buffer, ReadStatus* status, ReadCallback callback, void* param) override;
268 bool render(const Object& object, const Rect& location, std::unique_ptr<Renderer>& renderer) override;
Orientation orientation
Definition: Libraries/Graphics/src/include/Graphics/Device.h:79
void reset()
Reset the display list ready for re-use List MUST NOT be in use!
bool writeDataBuffer(SharedBuffer &data, size_t offset, uint16_t length)
Add WRITE command plus external data.
bool setPixel(PackedColor color, uint8_t bytesPerPixel, Point pt)
Set a single pixel.
uint16_t used() const
Get number of bytes stored in buffer.
Definition: DisplayList.h:295
bool setAddrWindow(const Rect &rect)
Set window for read/write operations.
uint16_t freeSpace() const
Get number of bytes remaining in buffer.
Definition: DisplayList.h:279
uint8_t * getBuffer(uint16_t &available)
Get some space in the list to write pixel data.
bool blockFill(const void *data, uint16_t length, uint32_t repeat)
Perform a block fill operation with repeat, e.g. multiple pixel fill or repeated pattern.
Definition: MipiDisplay.h:28
uint32_t readRegister(uint8_t cmd, uint8_t byteCount)
Size nativeSize
Size of attached screen.
Definition: MipiDisplay.h:185
bool scroll(int16_t y) override
Scroll region of display up or down using hardware scrolling.
bool begin(HSPI::PinSet pinSet, uint8_t chipSelect, uint8_t dcPin, uint8_t resetPin=PIN_NONE, uint32_t clockSpeed=4000000)
bool setScrollMargins(uint16_t top, uint16_t bottom) override
Set margins for hardware scrolling.
PixelFormat getPixelFormat() const override
All surfaces support the same pixel format.
Definition: MipiDisplay.h:118
void setNativeSize(Size screenSize)
Sets the screen size. Must be called before calling begin()
Definition: MipiDisplay.h:89
bool setOrientation(Orientation orientation) override
Set display orientation.
void setDefaultAddressMode(uint8_t mode)
Set default address mode setting.
Definition: MipiDisplay.h:171
void sendInitData(const FSTR::ObjectBase &data)
Called by implementation to send fixed initialisation sequences.
Definition: MipiDisplay.h:146
Point addrOffset
Display orientation may require adjustment to address window position.
Definition: MipiDisplay.h:186
MipiDisplay(HSPI::Controller &spi, Size resolution, Size screenSize)
Definition: MipiDisplay.h:34
Size getSize() const override
Get target dimensions.
Definition: MipiDisplay.h:113
static const SpiDisplayList::Commands commands
Definition: MipiDisplay.h:30
Size getNativeSize() const override
Get physical size of display.
Definition: MipiDisplay.h:94
virtual bool initialise()=0
Perform display-specific initialisation.
Surface * createSurface(size_t bufferSize=0) override
Create a surface for use with this render target.
Definition: MipiDisplay.h:198
PixelFormat getPixelFormat() const override
Definition: MipiDisplay.h:225
uint8_t * getBuffer(uint16_t minBytes, uint16_t &available) override
Definition: MipiDisplay.h:242
bool setAddrWindow(const Rect &rect) override
Definition: MipiDisplay.h:230
int readDataBuffer(ReadBuffer &buffer, ReadStatus *status, ReadCallback callback, void *param) override
Read some pixels.
MipiSurface(MipiDisplay &display, size_t bufferSize)
bool setPixel(PackedColor color, Point pt) override
Definition: MipiDisplay.h:262
bool present(PresentCallback callback, void *param) override
Present surface to display device.
bool render(const Object &object, const Rect &location, std::unique_ptr< Renderer > &renderer) override
Start rendering an object.
void reset() override
Reset surface ready for more commands.
Definition: MipiDisplay.h:215
bool writeDataBuffer(SharedBuffer &data, size_t offset, uint16_t length) override
Definition: MipiDisplay.h:257
bool blockFill(const void *data, uint16_t length, uint32_t repeat) override
Definition: MipiDisplay.h:252
A drawable object inherits from this virtual base class.
Definition: Libraries/Graphics/src/include/Graphics/Object.h:97
Definition: SpiDisplay.h:33
void execute(SpiDisplayList &list, DisplayList::Callback callback=nullptr, void *param=nullptr)
Definition: SpiDisplay.h:43
void(*)(ReadBuffer &data, size_t length, void *param) ReadCallback
Callback for readPixel() operations.
Definition: Surface.h:69
Manages access to SPI hardware.
Definition: HardwareSPI/src/include/HSPI/Controller.h:52
bool isReady() const
Determine if the device is initialised.
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:76
uint32_t getSpeed() const
Definition: Libraries/HardwareSPI/src/include/HSPI/Device.h:91
Definition: Virtual.h:31
Orientation
Defines orientation of display.
Definition: Libraries/Graphics/src/include/Graphics/Types.h:47
static constexpr uint8_t PIN_NONE
Undefined I/O pin value.
Definition: Libraries/Graphics/src/include/Graphics/Types.h:37
constexpr Size rotate(Size size, Orientation orientation)
Definition: Libraries/Graphics/src/include/Graphics/Types.h:122
Buffer used for reading pixel data from device.
Definition: Graphics/src/include/Graphics/Buffer.h:186
Stores result of read operation.
Definition: Graphics/src/include/Graphics/Buffer.h:213
Location and size of rectangular area (x, y, w, h)
Definition: Libraries/Graphics/src/include/Graphics/Types.h:287
Size of rectangular area (width x height)
Definition: Libraries/Graphics/src/include/Graphics/Types.h:105
Commonly-used display-specific command codes.
Definition: SpiDisplayList.h:43
Definition: Surface.h:58