API Documentation
RasterState.h
1 // RasterState.h
3 //
5 
6 namespace nkGraphics
7 {
15  class RasterState : public Resource, public nkExport::Exportable
16  {
17  public :
18 
22  virtual ~RasterState () ;
23 
24  // Getters
28  virtual FILL_MODE getFillMode () const = 0 ;
32  virtual CULL_MODE getCullMode () const = 0 ;
36  virtual bool getFrontCounterClockwise () const = 0 ;
40  virtual int getDepthBias () const = 0 ;
44  virtual float getDepthBiasClamp () const = 0 ;
48  virtual float getSlopeScaledDepthBias () const = 0 ;
52  virtual bool getDepthClipEnabled () const = 0 ;
56  virtual bool getScissorEnabled () const = 0 ;
60  virtual bool getMultiSampleEnabled () const = 0 ;
64  virtual bool getAntiAliasedLineEnabled () const = 0 ;
68  virtual unsigned int getForcedSampleCount () const = 0 ;
72  virtual bool getConservativeRasterizationEnabled () const = 0 ;
73 
74  // Setters
80  virtual void setFillMode (FILL_MODE value) = 0 ;
86  virtual void setCullMode (CULL_MODE value) = 0 ;
92  virtual void setFrontCounterClockwise (bool value) = 0 ;
98  virtual void setDepthBias (int value) = 0 ;
104  virtual void setDepthBiasClamp (float value) = 0 ;
110  virtual void setSlopeScaledDepthBias (float value) = 0 ;
116  virtual void setDepthClipEnabled (bool value) = 0 ;
122  virtual void setScissorEnabled (bool value) = 0 ;
128  virtual void setMultiSampleEnabled (bool value) = 0 ;
134  virtual void setAntiAliasedLineEnabled (bool value) = 0 ;
140  virtual void setForcedSampleCount (unsigned int value) = 0 ;
146  virtual void setConservativeRasterizationEnabled (bool value) = 0 ;
150  virtual void resetToDefault () = 0 ;
151 
152  // Import / export
153  virtual void exportClassToTree (nkExport::Node* rootNode) override ;
154  virtual void importClassFromTree (nkExport::Node* rootNode) override ;
155 
156  public :
157 
158  // Statics
166  static nkMemory::UniquePtr<RasterState> create (System* system = nullptr) ;
167  } ;
168 }
nkGraphics::CULL_MODE
CULL_MODE
Available culling modes.
Definition: DxDefinesWrapper.h:308
nkGraphics::RasterState::setAntiAliasedLineEnabled
virtual void setAntiAliasedLineEnabled(bool value)=0
nkGraphics::RasterState::getScissorEnabled
virtual bool getScissorEnabled() const =0
nkGraphics::System
Main interface with the component system.
Definition: System.h:14
nkGraphics::RasterState::setFrontCounterClockwise
virtual void setFrontCounterClockwise(bool value)=0
nkGraphics::RasterState::setForcedSampleCount
virtual void setForcedSampleCount(unsigned int value)=0
nkGraphics::RasterState::setSlopeScaledDepthBias
virtual void setSlopeScaledDepthBias(float value)=0
nkExport::Exportable
An interface to define objects that can be exported using this component.
Definition: Exportable.h:15
nkGraphics::RasterState::create
static nkMemory::UniquePtr< RasterState > create(System *system=nullptr)
nkGraphics::RasterState::setDepthBiasClamp
virtual void setDepthBiasClamp(float value)=0
nkGraphics::RasterState::setCullMode
virtual void setCullMode(CULL_MODE value)=0
nkGraphics::RasterState::importClassFromTree
virtual void importClassFromTree(nkExport::Node *rootNode) override
nkGraphics::RasterState::resetToDefault
virtual void resetToDefault()=0
nkGraphics::RasterState::getConservativeRasterizationEnabled
virtual bool getConservativeRasterizationEnabled() const =0
nkGraphics::RasterState::getAntiAliasedLineEnabled
virtual bool getAntiAliasedLineEnabled() const =0
nkGraphics::RasterState::getDepthBiasClamp
virtual float getDepthBiasClamp() const =0
nkGraphics::RasterState::getForcedSampleCount
virtual unsigned int getForcedSampleCount() const =0
nkExport::Node
A node in the tree structure representing the data to export / import.
Definition: Node.h:42
nkGraphics::RasterState::getDepthClipEnabled
virtual bool getDepthClipEnabled() const =0
nkGraphics::RasterState::getDepthBias
virtual int getDepthBias() const =0
nkMemory::UniquePtr
Smart pointer owning the object instance it encapsulates.
Definition: UniquePtr.h:17
nkGraphics::RasterState::setDepthBias
virtual void setDepthBias(int value)=0
nkGraphics::RasterState::setMultiSampleEnabled
virtual void setMultiSampleEnabled(bool value)=0
nkGraphics::Resource
Base class for a resource in the component.
Definition: Resource.h:12
nkGraphics::RasterState::setConservativeRasterizationEnabled
virtual void setConservativeRasterizationEnabled(bool value)=0
nkGraphics::RasterState::getFrontCounterClockwise
virtual bool getFrontCounterClockwise() const =0
nkGraphics::RasterState::getFillMode
virtual FILL_MODE getFillMode() const =0
nkGraphics::FILL_MODE
FILL_MODE
Available filling mode during rasterization.
Definition: DxDefinesWrapper.h:298
nkGraphics::RasterState::setDepthClipEnabled
virtual void setDepthClipEnabled(bool value)=0
nkGraphics::RasterState::setScissorEnabled
virtual void setScissorEnabled(bool value)=0
nkGraphics
Encompasses all API of component NilkinsGraphics.
Definition: BoundingBox.h:7
nkGraphics::RasterState::getCullMode
virtual CULL_MODE getCullMode() const =0
nkGraphics::RasterState::getSlopeScaledDepthBias
virtual float getSlopeScaledDepthBias() const =0
nkGraphics::RasterState::~RasterState
virtual ~RasterState()
nkGraphics::RasterState::getMultiSampleEnabled
virtual bool getMultiSampleEnabled() const =0
nkGraphics::RasterState::setFillMode
virtual void setFillMode(FILL_MODE value)=0
nkGraphics::RasterState
Holds information about a raster state.
Definition: RasterState.h:16
nkGraphics::RasterState::exportClassToTree
virtual void exportClassToTree(nkExport::Node *rootNode) override