The Pedigree Project 0.1
Public Member Functions | Private Attributes | List of all members
VmwareGraphics::VmwareFramebuffer Class Reference
+ Inheritance diagram for VmwareGraphics::VmwareFramebuffer:
+ Collaboration diagram for VmwareGraphics::VmwareFramebuffer:

Public Member Functions

 VmwareFramebuffer (uintptr_t framebuffer, VmwareGraphics *pDisplay)
 
void closeCallbacks ()
 
void detach ()
 
virtual void hwRedraw (size_t x=~0UL, size_t y=~0UL, size_t width=~0UL, size_t height=~0UL)
 Inherited by drivers that provide a hardware redraw function.
 
virtual void copy (size_t sourceX, size_t sourceY, size_t destinationX, size_t destinationY, size_t width, size_t height, bool bLowestCall=true)
 
void softwareCopy (size_t sourceX, size_t sourceY, size_t destinationX, size_t destinationY, size_t width, size_t height)
 
- Public Member Functions inherited from Framebuffer
size_t getWidth () const
 
size_t getHeight () const
 
Graphics::PixelFormat getFormat () const
 
bool getActive () const
 
void setActive (bool b)
 
void setPalette (uint32_t *palette, size_t nEntries)
 
uint32_t * getPalette () const
 
virtual void * getRawBuffer () const
 
virtual physical_uintptr_t getPhysicalPage (size_t offset) const
 
virtual Graphics::Buffer * createBuffer (const void *srcData, Graphics::PixelFormat srcFormat, size_t width, size_t height, uint32_t *pPalette=0)
 
virtual void destroyBuffer (Graphics::Buffer *pBuffer)
 
void redraw (size_t x=~0UL, size_t y=~0UL, size_t w=~0UL, size_t h=~0UL, bool bChild=false)
 
virtual void blit (Graphics::Buffer *pBuffer, size_t srcx, size_t srcy, size_t destx, size_t desty, size_t width, size_t height, bool bLowestCall=true)
 
virtual void draw (void *pBuffer, size_t srcx, size_t srcy, size_t destx, size_t desty, size_t width, size_t height, Graphics::PixelFormat format=Graphics::Bits32_Argb, bool bLowestCall=true)
 
virtual void rect (size_t x, size_t y, size_t width, size_t height, uint32_t colour, Graphics::PixelFormat format=Graphics::Bits32_Argb, bool bLowestCall=true)
 
virtual void line (size_t x1, size_t y1, size_t x2, size_t y2, uint32_t colour, Graphics::PixelFormat format=Graphics::Bits32_Argb, bool bLowestCall=true)
 
void setPixel (size_t x, size_t y, uint32_t colour, Graphics::PixelFormat format=Graphics::Bits32_Argb, bool bLowestCall=true)
 
void setXPos (size_t x)
 
void setYPos (size_t y)
 
void setWidth (size_t w)
 
void setHeight (size_t h)
 
void setFormat (Graphics::PixelFormat pf)
 
void setBytesPerPixel (size_t b)
 
uint32_t getBytesPerPixel () const
 
void setBytesPerLine (size_t b)
 
uint32_t getBytesPerLine () const
 
void setParent (Framebuffer *p)
 
Framebuffer * getParent () const
 
virtual void setFramebuffer (uintptr_t p)
 
bool initialise ()
 
void storeMode ()
 
void restoreMode ()
 
int enterMode (size_t desiredW, size_t desiredH, size_t desiredBpp)
 
int useCurrentMode ()
 
void * getFramebuffer () const
 
void flush (size_t x, size_t y, size_t w, size_t h)
 
cairo_format_t getFormat () const
 
size_t getWidth () const
 
size_t getHeight () const
 
size_t getBytesPerLine () const
 

Private Attributes

OperationBarrier m_CallbackOperations
 
VmwareGraphics * m_pDisplay
 

Additional Inherited Members

- Public Attributes inherited from Framebuffer
size_t m_XPos
 X position on our parent's framebuffer.
 
size_t m_YPos
 Y position on our parent's framebuffer.
 
size_t m_nWidth
 Width of the framebuffer in pixels.
 
size_t m_nHeight
 Height of the framebuffer in pixels.
 
Graphics::PixelFormat m_PixelFormat
 Framebuffer pixel format.
 
size_t m_nBytesPerPixel
 Bytes per pixel in this framebuffer.
 
size_t m_nBytesPerLine
 Bytes per line in this framebuffer.
 
Framebuffer * m_pParent
 Parent of this framebuffer.
 
- Protected Member Functions inherited from Framebuffer
Graphics::Buffer bufferFromSelf ()
 
virtual void draw (Graphics::Buffer *pBuffer, size_t srcx, size_t srcy, size_t destx, size_t desty, size_t width, size_t height, bool bLowestCall=true)
 
void swBlit (Graphics::Buffer *pBuffer, size_t srcx, size_t srcy, size_t destx, size_t desty, size_t width, size_t height)
 
void swRect (size_t x, size_t y, size_t width, size_t height, uint32_t colour, Graphics::PixelFormat format)
 
void swCopy (size_t srcx, size_t srcy, size_t destx, size_t desty, size_t w, size_t h)
 
void swLine (size_t x1, size_t y1, size_t x2, size_t y2, uint32_t colour, Graphics::PixelFormat format)
 
void swDraw (void *pBuffer, size_t srcx, size_t srcy, size_t destx, size_t desty, size_t width, size_t height, Graphics::PixelFormat format=Graphics::Bits32_Argb, bool bLowestCall=true)
 
void swDraw (Graphics::Buffer *pBuffer, size_t srcx, size_t srcy, size_t destx, size_t desty, size_t width, size_t height, bool bLowestCall=true)
 
Graphics::Buffer * swCreateBuffer (const void *srcData, Graphics::PixelFormat srcFormat, size_t width, size_t height, uint32_t *pPalette)
 
void swDestroyBuffer (Graphics::Buffer *pBuffer)
 
- Protected Attributes inherited from Framebuffer
uintptr_t m_FramebufferBase
 
uint32_t * m_Palette
 Current graphics palette - an array of 256 32-bit RGBA entries.
 
bool m_bActive
 Whether this framebuffer is active or not.
 

Detailed Description

Definition at line 300 of file modules/drivers/x86/vmware-gfx/main.cc.

Constructor & Destructor Documentation

◆ VmwareFramebuffer()

VmwareGraphics::VmwareFramebuffer::VmwareFramebuffer ( uintptr_t  framebuffer,
VmwareGraphics *  pDisplay 
)
inline

Definition at line 302 of file modules/drivers/x86/vmware-gfx/main.cc.

Member Function Documentation

◆ closeCallbacks()

void VmwareGraphics::VmwareFramebuffer::closeCallbacks ( )
inline

Definition at line 309 of file modules/drivers/x86/vmware-gfx/main.cc.

◆ copy()

virtual void VmwareGraphics::VmwareFramebuffer::copy ( size_t  srcx,
size_t  srcy,
size_t  destx,
size_t  desty,
size_t  w,
size_t  h,
bool  bLowestCall = true 
)
inlinevirtual

Copies a rectangle already on the framebuffer to a new location

Reimplemented from Framebuffer.

Definition at line 336 of file modules/drivers/x86/vmware-gfx/main.cc.

References ProcessorBase::getInterrupts(), and OperationBarrier::tryAcquire().

◆ detach()

void VmwareGraphics::VmwareFramebuffer::detach ( )
inline

Definition at line 313 of file modules/drivers/x86/vmware-gfx/main.cc.

◆ hwRedraw()

virtual void VmwareGraphics::VmwareFramebuffer::hwRedraw ( size_t  x = ~0UL,
size_t  y = ~0UL,
size_t  w = ~0UL,
size_t  h = ~0UL 
)
inlinevirtual

Inherited by drivers that provide a hardware redraw function.

Reimplemented from Framebuffer.

Definition at line 320 of file modules/drivers/x86/vmware-gfx/main.cc.

References ProcessorBase::getInterrupts(), and OperationBarrier::tryAcquire().

◆ softwareCopy()

void VmwareGraphics::VmwareFramebuffer::softwareCopy ( size_t  sourceX,
size_t  sourceY,
size_t  destinationX,
size_t  destinationY,
size_t  width,
size_t  height 
)
inline

Definition at line 347 of file modules/drivers/x86/vmware-gfx/main.cc.

Member Data Documentation

◆ m_CallbackOperations

OperationBarrier VmwareGraphics::VmwareFramebuffer::m_CallbackOperations
private

Definition at line 353 of file modules/drivers/x86/vmware-gfx/main.cc.

◆ m_pDisplay

VmwareGraphics* VmwareGraphics::VmwareFramebuffer::m_pDisplay
private

Definition at line 354 of file modules/drivers/x86/vmware-gfx/main.cc.


The documentation for this class was generated from the following file: