Adding support for power on/off.
9 const int KMaxDisplayStringLength = 256;
12 Define an interface to some basic display functionality
14 class DisplayBase: public HidDevice
17 DisplayBase():iRequest(EMiniDisplayRequestNone),iPowerOn(false)
20 iFirmwareRevision[0]=0;
23 virtual ~DisplayBase(){};
26 virtual void Close()=0;
28 virtual int MinBrightness() const=0;
29 virtual int MaxBrightness() const=0;
30 virtual void SetBrightness(int aBrightness)=0;
31 virtual void Clear()=0;
32 virtual void Fill()=0;
34 virtual void SwapBuffers()=0;
37 virtual void Request(TMiniDisplayRequest /*aRequest*/){ /*No request supported by default*/ };
38 virtual TMiniDisplayRequest AttemptRequestCompletion()=0;
40 virtual TMiniDisplayRequest CurrentRequest(){return iRequest;}
41 virtual void CancelRequest(){iRequest=EMiniDisplayRequestNone;}
42 virtual bool RequestPending(){return iRequest!=EMiniDisplayRequestNone;}
44 virtual bool IsPowerOn() {return iPowerOn;}
45 virtual char* DeviceId() {return iDeviceId;}
46 virtual char* FirmwareRevision() {return iFirmwareRevision;}
48 virtual void TurnPowerOn(){}
49 virtual void TurnPowerOff(){}
50 virtual bool SupportPowerOnOff(){return false;}
53 void SetRequest(TMiniDisplayRequest aRequest) { iRequest=aRequest; }
56 char iDeviceId[KMaxDisplayStringLength];
57 char iFirmwareRevision[KMaxDisplayStringLength];
62 TMiniDisplayRequest iRequest;
68 class GraphicDisplay : public DisplayBase
71 virtual int WidthInPixels() const=0;
72 virtual int HeightInPixels() const=0;
73 virtual void SetPixel(unsigned char aX, unsigned char aY, bool aOn)=0;
74 virtual void SetAllPixels(unsigned char aOn)=0;
75 virtual int FrameBufferSizeInBytes() const=0;
76 //virtual int BitBlit(unsigned char* aSrc, unsigned char aSrcWidth, unsigned char aSrcHeight, unsigned char aTargetX, unsigned char aTargetY) const=0;