Nearest light range is an extension to light range that returns the lights in distance order to caller. More...
#include <kanzi/core.ui/graphics3d/gather_nearest_lights_render_pass.hpp>
Classes | |
| class | NearestLightRangeLocation |
| Light range location implementation. More... | |
Public Member Functions | |
| bool | isOrderDirty () const |
| Indicates whether the light order is dirty and needs recalculation. | |
| void | setOrderDirty () |
| Queue notification for the light range. | |
| ~NearestLightRange () | |
| Destructor. | |
Public Member Functions inherited from kanzi::TypedValueRange< LightDistanceInfo > | |
| iterator | begin () |
| Gets an iterator to the beginning of the range. | |
| const_iterator | begin () const |
| Gets an iterator to the beginning of the range. | |
| const_iterator | cbegin () const |
| Gets an iterator to the beginning of the range. | |
| const_iterator | cend () const |
| Gets an iterator to the end of the range. | |
| void | clear () |
| Clears all values from internal storage. | |
| iterator | end () |
| Gets an iterator to the end of the range. | |
| const_iterator | end () const |
| Gets an iterator to the end of the range. | |
| vector< LightDistanceInfo >::reference | operator[] (size_t index) |
| Access operator. | |
| vector< LightDistanceInfo >::const_reference | operator[] (size_t index) const |
| Const access operator. | |
| void | push_back (const LightDistanceInfo &value) |
| Appends a value to the end of internal storage. | |
| void | push_back (LightDistanceInfo &&value) |
| Appends a value to the end of internal storage. | |
| void | setValue (size_t index, const LightDistanceInfo &value) |
| Sets a value to the internal storage index. | |
| size_t | size () const |
| Tells the number of elements in the range. | |
Public Member Functions inherited from kanzi::AbstractIndexedRange | |
| PropertyObjectSharedPtr | getPropertyObjectByIndex (size_t index) |
| Gets a property object by index. | |
| bool | getPropertyValueByIndex (size_t index, AbstractPropertyType propertyType, Variant &value) |
| Access a property in a property object at an index. | |
| size_t | getSize () |
| Gets the size of the indexed range. | |
| bool | getValueByIndex (size_t index, Variant &value) |
| Reads a value by index and writes it to a variant. | |
Public Member Functions inherited from kanzi::AbstractRange | |
| bool | adaptView (AbstractRange &potentialViewRange, size_t length) |
| Attempts to reuse a view over this range. | |
| AbstractRangeIterator | beginIteration () |
| Gets an iterator to the beginning of this range. | |
| AbstractRangeSharedPtr | createView (size_t length) |
| Creates a view over this range. | |
| AbstractRangeSharedPtr | evaluate () |
| Evaluate the abstract range. | |
| AbstractRangeLocationPtr | locationBegin () |
| Gets an iteratable location to beginning of the range. | |
| virtual | ~AbstractRange ()=default |
| Destructor. | |
Static Public Member Functions | |
| static shared_ptr< NearestLightRange > | create (LightRangeSharedPtr lightRange) |
| Creates a new nearest light range. | |
| static shared_ptr< NearestLightRange > | create (LightRangeSharedPtr lightRange, Node3DSharedPtr referenceNode) |
| Creates a new nearest light range. | |
Static Public Member Functions inherited from kanzi::TypedValueRange< LightDistanceInfo > | |
| static shared_ptr< TypedValueRange > | create () |
| Creates a new typed value range. | |
Protected Attributes | |
| LightRangeWeakPtr | m_lightRange |
| Source light range. | |
| bool | m_orderDirty |
| Flag for indicating whether or not the ordering in this light range is dirty. | |
| Node3DWeakPtr | m_referenceNode |
| Reference to a node. | |
Protected Attributes inherited from kanzi::TypedValueRange< LightDistanceInfo > | |
| vector< LightDistanceInfo > | m_values |
| Container for single type of value. | |
Additional Inherited Members | |
Public Types inherited from kanzi::TypedValueRange< LightDistanceInfo > | |
| using | const_iterator |
| Const iterator type for values. | |
| using | iterator |
| Iterator type for values. | |
Nearest light range is an extension to light range that returns the lights in distance order to caller.
| kanzi::GatherNearestLightsRenderPass::NearestLightRange::~NearestLightRange | ( | ) |
Destructor.
|
explicitprotected |
Default Constructor.
| lightRange | Light range referenced. |
| referenceNode | Reference node for the sorting. |
|
static |
Creates a new nearest light range.
| lightRange | Light range referenced. |
| referenceNode | Reference node for the sorting. |
|
inlinestatic |
Creates a new nearest light range.
| lightRange | Light range referenced. |
|
inline |
Indicates whether the light order is dirty and needs recalculation.
|
inline |
Queue notification for the light range.
When you call this function, the next execution of the Gather Nearest Lights Render Pass notifies the range.
|
protected |
Sort the lights according to the already-stored distance.
This function does nothing if the order is not dirty or if the
|
protected |
Source light range.
|
protected |
Reference to a node.
|
protected |
Flag for indicating whether or not the ordering in this light range is dirty.