Subversion Repository Public Repository

Divide-Framework

This repository has no backups
This repository's network speed is throttled to 100KB/sec

Diff Revisions 762 vs 765 for /trunk/Source Code/Platform/Video/Buffers/RenderTarget/Headers/RTDrawDescriptor.h

Diff revisions: vs.
  @@ -65,13 +65,28 @@
65 65 };
66 66
67 67 class RTDrawDescriptor {
68 + public:
69 + enum class State : U32 {
70 + CLEAR_COLOUR_BUFFERS = toBit(1),
71 + CLEAR_DEPTH_BUFFER = toBit(2),
72 + CHANGE_VIEWPORT = toBit(3),
73 + COUNT = 3
74 + };
75 +
68 76 public:
69 77 RTDrawDescriptor();
70 78
79 + void stateMask(U32 stateMask);
80 + void enableState(State state);
81 + void disableState(State state);
82 + bool isEnabledState(State state) const;
83 +
84 + inline RTDrawMask& drawMask() { return _drawMask; }
85 + inline const RTDrawMask& drawMask() const { return _drawMask; }
86 + inline U32 stateMask() const { return _stateMask; }
87 + protected:
71 88 RTDrawMask _drawMask;
72 - bool _clearColourBuffersOnBind;
73 - bool _clearDepthBufferOnBind;
74 - bool _changeViewport;
89 + U32 _stateMask;
75 90 };
76 91 }; //namespace Divide
77 92