Dali 3D User Interface Engine
Classes | Namespaces | Functions
hit-test-algorithm-impl.cpp File Reference
#include <dali/internal/event/events/hit-test-algorithm-impl.h>
#include <dali/integration-api/system-overlay.h>
#include <dali/public-api/actors/layer.h>
#include <dali/public-api/math/vector2.h>
#include <dali/public-api/math/vector4.h>
#include <dali/integration-api/debug.h>
#include <dali/internal/event/actors/actor-impl.h>
#include <dali/internal/event/actors/camera-actor-impl.h>
#include <dali/internal/event/actors/image-actor-impl.h>
#include <dali/internal/event/actors/layer-impl.h>
#include <dali/internal/event/actors/layer-list.h>
#include <dali/internal/event/common/system-overlay-impl.h>
#include <dali/internal/event/common/stage-impl.h>
#include <dali/internal/event/common/projection.h>
#include <dali/internal/event/images/frame-buffer-image-impl.h>
#include <dali/internal/event/render-tasks/render-task-impl.h>
#include <dali/internal/event/render-tasks/render-task-list-impl.h>
Include dependency graph for hit-test-algorithm-impl.cpp:

Go to the source code of this file.

Classes

struct  Dali::Internal::HitTestAlgorithm::anonymous_namespace{hit-test-algorithm-impl.cpp}::HitActor
 
struct  Dali::Internal::HitTestAlgorithm::anonymous_namespace{hit-test-algorithm-impl.cpp}::HitTestFunctionWrapper
 Creates an Actor handle so that a HitTestFunction provided via the public API can be called. More...
 
struct  Dali::Internal::HitTestAlgorithm::anonymous_namespace{hit-test-algorithm-impl.cpp}::ActorTouchableCheck
 Used in the hit-test algorithm to check whether the actor is touchable. More...
 

Namespaces

namespace  Dali
 The top level DALi namespace.
 
namespace  Dali::Internal
 
namespace  Dali::Internal::HitTestAlgorithm
 This namespace is provided for application developers to do hit test for the actors.
 
namespace  Dali::Internal::HitTestAlgorithm::anonymous_namespace{hit-test-algorithm-impl.cpp}
 

Functions

bool Dali::Internal::HitTestAlgorithm::anonymous_namespace{hit-test-algorithm-impl.cpp}::IsActorExclusiveToAnotherRenderTask (const Actor &actor, const RenderTask &renderTask, const Vector< RenderTaskList::Exclusive > &exclusives)
 Check to see if the actor we're about to hit test is exclusively owned by another rendertask? More...
 
HitActor Dali::Internal::HitTestAlgorithm::anonymous_namespace{hit-test-algorithm-impl.cpp}::HitTestWithinLayer (Actor &actor, const RenderTask &renderTask, const Vector< RenderTaskList::Exclusive > &exclusives, const Vector4 &rayOrigin, const Vector4 &rayDir, float &nearClippingPlane, float &farClippingPlane, HitTestInterface &hitCheck, bool &stencilOnLayer, bool &stencilHit, bool &overlayHit, bool parentIsStencil, bool layerIs3d)
 Recursively hit test all the actors, without crossing into other layers. More...
 
bool Dali::Internal::HitTestAlgorithm::anonymous_namespace{hit-test-algorithm-impl.cpp}::IsWithinSourceActors (const Actor &sourceActor, const Actor &actor)
 Return true if actor is sourceActor or a descendent of sourceActor. More...
 
bool Dali::Internal::HitTestAlgorithm::anonymous_namespace{hit-test-algorithm-impl.cpp}::IsActuallyHittable (Layer &layer, const Vector2 &screenCoordinates, const Vector2 &stageSize, HitTestInterface &hitCheck)
 Returns true if the layer and all of the layer's parents are visible and sensitive. More...
 
void Dali::Internal::HitTestAlgorithm::anonymous_namespace{hit-test-algorithm-impl.cpp}::GetCameraClippingPlane (RenderTask &renderTask, float &nearClippingPlane, float &farClippingPlane)
 Gets the near and far clipping planes of the camera from which the scene is viewed in the render task. More...
 
bool Dali::Internal::HitTestAlgorithm::anonymous_namespace{hit-test-algorithm-impl.cpp}::HitTestRenderTask (const Vector< RenderTaskList::Exclusive > &exclusives, Stage &stage, LayerList &layers, RenderTask &renderTask, Vector2 screenCoordinates, Results &results, HitTestInterface &hitCheck)
 Hit test a RenderTask. More...
 
bool Dali::Internal::HitTestAlgorithm::anonymous_namespace{hit-test-algorithm-impl.cpp}::HitTestForEachRenderTask (Stage &stage, LayerList &layers, RenderTaskList &taskList, const Vector2 &screenCoordinates, Results &results, HitTestInterface &hitCheck)
 Iterate through RenderTaskList and perform hit test. More...
 
bool Dali::Internal::HitTestAlgorithm::HitTest (Stage &stage, const Vector2 &screenCoordinates, Dali::HitTestAlgorithm::Results &results, Dali::HitTestAlgorithm::HitTestFunction func)
 Given screen coordinates, this method returns the hit actor & the local coordinates relative to the top-left (0.0f, 0.0f, 0.5f) of the actor. More...
 
bool Dali::Internal::HitTestAlgorithm::HitTest (Stage &stage, const Vector2 &screenCoordinates, Results &results, HitTestInterface &hitTestInterface)
 Given screen coordinates, this method returns the hit actor & the local coordinates relative to the actor etc. More...
 
bool Dali::Internal::HitTestAlgorithm::HitTest (Stage &stage, const Vector2 &screenCoordinates, Results &results)
 Default HitTest where we check if a touch is required. More...
 
bool Dali::Internal::HitTestAlgorithm::HitTest (Stage &stage, RenderTask &renderTask, const Vector2 &screenCoordinates, Dali::HitTestAlgorithm::Results &results, Dali::HitTestAlgorithm::HitTestFunction func)
 Hit test specific to a given RenderTask. More...
 
Dali Docs Home
Read more about Dali