xref: /haiku/src/tests/servers/app/newerClipping/drawing/DirectWindowBuffer.h (revision e76d86d5dd9a32639a877abbd1ffb318c040c720)
1 #ifndef DIRECT_WINDOW_BUFFER_H
2 #define DIRECT_WINDOW_BUFFER_H
3 
4 #include "RenderingBuffer.h"
5 
6 struct direct_buffer_info;
7 
8 class DirectWindowBuffer : public RenderingBuffer {
9  public:
10 								DirectWindowBuffer();
11 	virtual						~DirectWindowBuffer();
12 
13 	virtual	status_t			InitCheck() const;
14 
15 	virtual	color_space			ColorSpace() const;
16 	virtual	void*				Bits() const;
17 	virtual	uint32				BytesPerRow() const;
18 	virtual	uint32				Width() const;
19 	virtual	uint32				Height() const;
20 
21 			void				SetTo(direct_buffer_info* info);
22 
WindowClipping()23 			BRegion&			WindowClipping()
24 									{ return fWindowClipping; }
25  private:
26 			void*				fBits;
27 			uint32				fWidth;
28 			uint32				fHeight;
29 			uint32				fBytesPerRow;
30 			color_space			fFormat;
31 
32 			BRegion				fWindowClipping;
33 };
34 
35 #endif // DIRECT_WINDOW_BUFFER_H
36