1#ifndef D_WINDOW_BUFFER_H 2#define D_WINDOW_BUFFER_H 3 4 5#include "RenderingBuffer.h" 6 7#include <Accelerant.h> 8#include <DirectWindow.h> 9 10 11class DWindowBuffer : public RenderingBuffer { 12public: 13 DWindowBuffer(); 14 virtual ~DWindowBuffer(); 15 16 virtual status_t InitCheck() const; 17 18 virtual color_space ColorSpace() const; 19 virtual void* Bits() const; 20 virtual uint32 BytesPerRow() const; 21 virtual uint32 Width() const; 22 virtual uint32 Height() const; 23 24 virtual bool IsGraphicsMemory() const { return true; /* TODO! */ } 25 26 void SetTo(direct_buffer_info* info); 27 28 void SetTo(frame_buffer_config* config, 29 uint32 x, uint32 y, 30 uint32 width, uint32 height, 31 color_space format); 32 33 BRegion& WindowClipping() 34 { return fWindowClipping; } 35private: 36 uint8* fBits; 37 uint32 fWidth; 38 uint32 fHeight; 39 uint32 fBytesPerRow; 40 color_space fFormat; 41 42 BRegion fWindowClipping; 43}; 44 45#endif // D_WINDOW_BUFFER_H 46