CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats > Struct Template Reference
Interpolator over a scanline. More...
#include <csplugincommon/softshader/types.h>
Inheritance diagram for CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >:

| Public Member Functions | |
| void | Advance () | 
| Advance a pixel right. | |
| const ScanlineComp * | GetFloat (size_t i) const | 
| Return an interpolated component. | |
| void | Setup (const InterpolateEdgePersp &L, const InterpolateEdgePersp &R, uint len, int ipolStep, int ipolShift) | 
| Setup interpolation over a scanline, given left and right edge. | |
| Public Attributes | |
| ScanlineComp | floats [maxFloats] | 
| Buffer values. | |
| ScanlineCompDivZ | floats_f [maxFloats] | 
| Buffer values div Z. | |
| int | InterpolShift | 
| Interpolation shift. | |
| int | InterpolStep | 
| Interpolation step. | |
| float | invLastSpan | 
| Inverse of last span size. | |
| int | ipx | 
| Remaining pixels for this interpolation span. | |
| int | spans | 
| Remaining spans. | |
Detailed Description
template<int maxFloats>
 struct CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >
Interpolator over a scanline. 
Definition at line 161 of file types.h.
Member Function Documentation
| void CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::Advance | ( | ) |  [inline] | 
Advance a pixel right.
Definition at line 232 of file types.h.
References CS::PluginCommon::SoftShader::ScanlineComp::c, CS::PluginCommon::SoftShader::ScanlineComp::dcdx, CS::PluginCommon::SoftShader::ScanlineCompDivZ::dIcdx, CS::PluginCommon::SoftShader::InterpolateScanlinePerspCommon::dIzdx, CS::PluginCommon::SoftShader::InterpolateScanlinePerspCommon::dIzdx_f, CS::PluginCommon::SoftShader::InterpolateScanlinePerspCommon::dIzdx_fLast, CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::floats, CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::floats_f, CS::PluginCommon::SoftShader::ScanlineCompDivZ::Ic, CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::InterpolShift, CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::InterpolStep, CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::invLastSpan, CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::ipx, CS::PluginCommon::SoftShader::InterpolateScanlinePerspCommon::Iz, CS::PluginCommon::SoftShader::InterpolateScanlinePerspCommon::Iz_f, and CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::spans.
| const ScanlineComp* CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::GetFloat | ( | size_t | i | ) | const  [inline] | 
Return an interpolated component.
Definition at line 275 of file types.h.
References CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::floats.
| void CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::Setup | ( | const InterpolateEdgePersp & | L, | |
| const InterpolateEdgePersp & | R, | |||
| uint | len, | |||
| int | ipolStep, | |||
| int | ipolShift | |||
| ) |  [inline] | 
Setup interpolation over a scanline, given left and right edge.
Definition at line 180 of file types.h.
References CS::PluginCommon::SoftShader::ScanlineComp::c, CS::PluginCommon::SoftShader::InterpolateEdgePersp::PerFloat::c, CS::PluginCommon::SoftShader::ScanlineComp::dcdx, CS::PluginCommon::SoftShader::ScanlineCompDivZ::dIcdx, CS::PluginCommon::SoftShader::ScanlineCompDivZ::dIcdxLast, CS::PluginCommon::SoftShader::InterpolateScanlinePerspCommon::dIzdx, CS::PluginCommon::SoftShader::InterpolateScanlinePerspCommon::dIzdx_f, CS::PluginCommon::SoftShader::InterpolateScanlinePerspCommon::dIzdx_fLast, CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::floats, CS::PluginCommon::SoftShader::InterpolateEdgePersp::Floats, CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::floats_f, CS::PluginCommon::SoftShader::ScanlineCompDivZ::Ic, CS::PluginCommon::SoftShader::InterpolateEdgePersp::PerFloat::Ic, CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::InterpolShift, CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::InterpolStep, CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::invLastSpan, CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::ipx, CS::PluginCommon::SoftShader::InterpolateEdgePersp::Iz, CS::PluginCommon::SoftShader::InterpolateScanlinePerspCommon::Iz, CS::PluginCommon::SoftShader::InterpolateScanlinePerspCommon::Iz_f, and CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::spans.
Member Data Documentation
| ScanlineComp CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::floats[maxFloats] | 
Buffer values.
Definition at line 164 of file types.h.
Referenced by CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::Advance(), CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::GetFloat(), and CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::Setup().
| ScanlineCompDivZ CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::floats_f[maxFloats] | 
Buffer values div Z.
Definition at line 166 of file types.h.
Referenced by CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::Advance(), and CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::Setup().
| int CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::InterpolShift | 
Interpolation shift.
Definition at line 171 of file types.h.
Referenced by CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::Advance(), CS::PluginCommon::SoftShader::InterpolateScanlinePersp< 0 >::Setup(), and CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::Setup().
| int CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::InterpolStep | 
Interpolation step.
Definition at line 169 of file types.h.
Referenced by CS::PluginCommon::SoftShader::InterpolateScanlinePersp< 0 >::Advance(), CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::Advance(), CS::PluginCommon::SoftShader::InterpolateScanlinePersp< 0 >::Setup(), and CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::Setup().
| float CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::invLastSpan | 
Inverse of last span size.
Definition at line 177 of file types.h.
Referenced by CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::Advance(), and CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::Setup().
| int CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::ipx | 
Remaining pixels for this interpolation span.
Definition at line 173 of file types.h.
Referenced by CS::PluginCommon::SoftShader::InterpolateScanlinePersp< 0 >::Advance(), CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::Advance(), CS::PluginCommon::SoftShader::InterpolateScanlinePersp< 0 >::Setup(), and CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::Setup().
| int CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::spans | 
Remaining spans.
Definition at line 175 of file types.h.
Referenced by CS::PluginCommon::SoftShader::InterpolateScanlinePersp< 0 >::Advance(), CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::Advance(), CS::PluginCommon::SoftShader::InterpolateScanlinePersp< 0 >::Setup(), and CS::PluginCommon::SoftShader::InterpolateScanlinePersp< maxFloats >::Setup().
The documentation for this struct was generated from the following file:
- csplugincommon/softshader/types.h
Generated for Crystal Space by doxygen 1.4.7

