libgpac
Documentation of the core library of GPAC
mpeg4_sensors.c File Reference
#include "nodes_stacks.h"
#include "visual_manager.h"
#include "mpeg4_grouping.h"
#include <gpac/scenegraph_svg.h>
+ Include dependency graph for mpeg4_sensors.c:

Data Structures

struct  AnchorStack
 
struct  DiscSensorStack
 
struct  PS2DStack
 
struct  Prox2DStack
 
struct  TouchSensorStack
 
struct  PSStack
 
struct  CylinderSensorStack
 
struct  SphereSensorStack
 

Functions

static void mpeg4_sensor_deleted (GF_Node *node, GF_SensorHandler *hdl)
 
static void mpeg4_sensor_created (GF_Compositor *compositor, GF_Node *node)
 
static void TraverseAnchor (GF_Node *node, void *rs, Bool is_destroy)
 
static void anchor_activation (GF_Node *node, AnchorStack *st, GF_Compositor *compositor)
 
static Bool OnAnchor (GF_SensorHandler *sh, Bool is_over, Bool is_cancel, GF_Event *ev, GF_Compositor *compositor)
 
static Bool anchor_is_enabled (GF_Node *node)
 
static void on_activate_anchor (GF_Node *node, GF_Route *route)
 
GF_SensorHandlergf_sc_anchor_get_handler (GF_Node *n)
 
void compositor_init_anchor (GF_Compositor *compositor, GF_Node *node)
 
static void DestroyDiscSensor (GF_Node *node, void *rs, Bool is_destroy)
 
static Bool ds_is_enabled (GF_Node *n)
 
static Bool OnDiscSensor (GF_SensorHandler *sh, Bool is_over, Bool is_cancel, GF_Event *ev, GF_Compositor *compositor)
 
static GF_SensorHandlerdisc_sensor_get_handler (GF_Node *n)
 
void compositor_init_disc_sensor (GF_Compositor *compositor, GF_Node *node)
 
static void DestroyPlaneSensor2D (GF_Node *node, void *rs, Bool is_destroy)
 
static Bool ps2D_is_enabled (GF_Node *n)
 
static Bool OnPlaneSensor2D (GF_SensorHandler *sh, Bool is_over, Bool is_cancel, GF_Event *ev, GF_Compositor *compositor)
 
static GF_SensorHandlerplane_sensor2d_get_handler (GF_Node *n)
 
void compositor_init_plane_sensor2d (GF_Compositor *compositor, GF_Node *node)
 
static void DestroyProximitySensor2D (GF_Node *node, void *rs, Bool is_destroy)
 
static Bool prox2D_is_enabled (GF_Node *n)
 
static Bool prox2D_is_in_sensor (Prox2DStack *st, M_ProximitySensor2D *ps, Fixed X, Fixed Y)
 
static Bool OnProximitySensor2D (GF_SensorHandler *sh, Bool is_over, Bool is_cancel, GF_Event *ev, GF_Compositor *compositor)
 
static GF_SensorHandlerproximity_sensor2d_get_handler (GF_Node *n)
 
void compositor_init_proximity_sensor2d (GF_Compositor *compositor, GF_Node *node)
 
static void DestroyTouchSensor (GF_Node *node, void *rs, Bool is_destroy)
 
static Bool ts_is_enabled (GF_Node *n)
 
static Bool OnTouchSensor (GF_SensorHandler *sh, Bool is_over, Bool is_cancel, GF_Event *ev, GF_Compositor *compositor)
 
static GF_SensorHandlertouch_sensor_get_handler (GF_Node *n)
 
void compositor_init_touch_sensor (GF_Compositor *compositor, GF_Node *node)
 
void TraverseProximitySensor (GF_Node *node, void *rs, Bool is_destroy)
 
void compositor_init_proximity_sensor (GF_Compositor *compositor, GF_Node *node)
 
static void DestroyPlaneSensor (GF_Node *node, void *rs, Bool is_destroy)
 
static Bool ps_is_enabled (GF_Node *n)
 
static Bool OnPlaneSensor (GF_SensorHandler *sh, Bool is_over, Bool is_cancel, GF_Event *ev, GF_Compositor *compositor)
 
static GF_SensorHandlerplane_sensor_get_handler (GF_Node *n)
 
void compositor_init_plane_sensor (GF_Compositor *compositor, GF_Node *node)
 
static void DestroyCylinderSensor (GF_Node *node, void *rs, Bool is_destroy)
 
static Bool cs_is_enabled (GF_Node *n)
 
static Bool OnCylinderSensor (GF_SensorHandler *sh, Bool is_over, Bool is_cancel, GF_Event *ev, GF_Compositor *compositor)
 
static GF_SensorHandlercylinder_sensor_get_handler (GF_Node *n)
 
void compositor_init_cylinder_sensor (GF_Compositor *compositor, GF_Node *node)
 
static void DestroySphereSensor (GF_Node *node, void *rs, Bool is_destroy)
 
static Bool sphere_is_enabled (GF_Node *n)
 
static Bool OnSphereSensor (GF_SensorHandler *sh, Bool is_over, Bool is_cancel, GF_Event *ev, GF_Compositor *compositor)
 
static GF_SensorHandlersphere_get_handler (GF_Node *n)
 
void compositor_init_sphere_sensor (GF_Compositor *compositor, GF_Node *node)
 
void TraverseVisibilitySensor (GF_Node *node, void *rs, Bool is_destroy)
 
void compositor_init_visibility_sensor (GF_Compositor *compositor, GF_Node *node)
 
GF_SensorHandlercompositor_mpeg4_get_sensor_handler (GF_Node *n)
 
GF_SensorHandlercompositor_mpeg4_get_sensor_handler_ex (GF_Node *n, Bool skip_anchors)
 
Bool compositor_mpeg4_is_sensor_node (GF_Node *node)
 
static void traverse_envtest (GF_Node *node, void *rs, Bool is_destroy)
 
void envtest_evaluate (GF_Node *node, GF_Route *_route)
 
void compositor_evaluate_envtests (GF_Compositor *compositor, u32 param_type)
 
void compositor_envtest_modified (GF_Node *node)
 
void compositor_init_envtest (GF_Compositor *compositor, GF_Node *node)
 

Data Structure Documentation

◆ AnchorStack

struct AnchorStack
+ Collaboration diagram for AnchorStack:
Data Fields
GROUPING_MPEG4_STACK_2D Bool enabled
GROUPING_MPEG4_STACK_2D Bool active
GROUPING_MPEG4_STACK_2D Bool over
GF_SensorHandler hdl
GF_Compositor * compositor

◆ DiscSensorStack

struct DiscSensorStack
+ Collaboration diagram for DiscSensorStack:
Data Fields
GF_SensorHandler hdl
GF_Compositor * compositor
Fixed start_angle
GF_Matrix initial_matrix

◆ PS2DStack

struct PS2DStack
+ Collaboration diagram for PS2DStack:
Data Fields
SFVec2f start_drag
GF_Matrix initial_matrix
GF_Compositor * compositor
GF_SensorHandler hdl

◆ Prox2DStack

struct Prox2DStack
+ Collaboration diagram for Prox2DStack:
Data Fields
Double last_time
GF_Compositor * compositor
GF_SensorHandler hdl

◆ TouchSensorStack

struct TouchSensorStack
+ Collaboration diagram for TouchSensorStack:
Data Fields
GF_SensorHandler hdl
Bool mouse_down
GF_Compositor * compositor

◆ PSStack

struct PSStack
+ Collaboration diagram for PSStack:
Data Fields
SFVec3f start_drag
GF_Plane tracker
GF_Matrix initial_matrix
GF_Compositor * compositor
GF_SensorHandler hdl

◆ CylinderSensorStack

struct CylinderSensorStack
+ Collaboration diagram for CylinderSensorStack:
Data Fields
GF_SensorHandler hdl
GF_Compositor * compositor
GF_Matrix init_matrix
Bool disk_mode
SFVec3f grab_start
GF_Plane yplane
GF_Plane zplane
GF_Plane xplane

◆ SphereSensorStack

struct SphereSensorStack
+ Collaboration diagram for SphereSensorStack:
Data Fields
GF_SensorHandler hdl
GF_Compositor * compositor
Fixed radius
SFVec3f grab_vec
SFVec3f center

Function Documentation

◆ mpeg4_sensor_deleted()

static void mpeg4_sensor_deleted ( GF_Node node,
GF_SensorHandler hdl 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ mpeg4_sensor_created()

static void mpeg4_sensor_created ( GF_Compositor *  compositor,
GF_Node node 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ TraverseAnchor()

static void TraverseAnchor ( GF_Node node,
void *  rs,
Bool  is_destroy 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ anchor_activation()

static void anchor_activation ( GF_Node node,
AnchorStack st,
GF_Compositor *  compositor 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ OnAnchor()

static Bool OnAnchor ( GF_SensorHandler sh,
Bool  is_over,
Bool  is_cancel,
GF_Event ev,
GF_Compositor *  compositor 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ anchor_is_enabled()

static Bool anchor_is_enabled ( GF_Node node)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ on_activate_anchor()

static void on_activate_anchor ( GF_Node node,
GF_Route *  route 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ gf_sc_anchor_get_handler()

GF_SensorHandler* gf_sc_anchor_get_handler ( GF_Node n)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compositor_init_anchor()

void compositor_init_anchor ( GF_Compositor *  compositor,
GF_Node node 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DestroyDiscSensor()

static void DestroyDiscSensor ( GF_Node node,
void *  rs,
Bool  is_destroy 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ds_is_enabled()

static Bool ds_is_enabled ( GF_Node n)
static
+ Here is the caller graph for this function:

◆ OnDiscSensor()

static Bool OnDiscSensor ( GF_SensorHandler sh,
Bool  is_over,
Bool  is_cancel,
GF_Event ev,
GF_Compositor *  compositor 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ disc_sensor_get_handler()

static GF_SensorHandler* disc_sensor_get_handler ( GF_Node n)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compositor_init_disc_sensor()

void compositor_init_disc_sensor ( GF_Compositor *  compositor,
GF_Node node 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DestroyPlaneSensor2D()

static void DestroyPlaneSensor2D ( GF_Node node,
void *  rs,
Bool  is_destroy 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ps2D_is_enabled()

static Bool ps2D_is_enabled ( GF_Node n)
static
+ Here is the caller graph for this function:

◆ OnPlaneSensor2D()

static Bool OnPlaneSensor2D ( GF_SensorHandler sh,
Bool  is_over,
Bool  is_cancel,
GF_Event ev,
GF_Compositor *  compositor 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ plane_sensor2d_get_handler()

static GF_SensorHandler* plane_sensor2d_get_handler ( GF_Node n)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compositor_init_plane_sensor2d()

void compositor_init_plane_sensor2d ( GF_Compositor *  compositor,
GF_Node node 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DestroyProximitySensor2D()

static void DestroyProximitySensor2D ( GF_Node node,
void *  rs,
Bool  is_destroy 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ prox2D_is_enabled()

static Bool prox2D_is_enabled ( GF_Node n)
static
+ Here is the caller graph for this function:

◆ prox2D_is_in_sensor()

static Bool prox2D_is_in_sensor ( Prox2DStack st,
M_ProximitySensor2D *  ps,
Fixed  X,
Fixed  Y 
)
static
+ Here is the caller graph for this function:

◆ OnProximitySensor2D()

static Bool OnProximitySensor2D ( GF_SensorHandler sh,
Bool  is_over,
Bool  is_cancel,
GF_Event ev,
GF_Compositor *  compositor 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ proximity_sensor2d_get_handler()

static GF_SensorHandler* proximity_sensor2d_get_handler ( GF_Node n)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compositor_init_proximity_sensor2d()

void compositor_init_proximity_sensor2d ( GF_Compositor *  compositor,
GF_Node node 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DestroyTouchSensor()

static void DestroyTouchSensor ( GF_Node node,
void *  rs,
Bool  is_destroy 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ts_is_enabled()

static Bool ts_is_enabled ( GF_Node n)
static
+ Here is the caller graph for this function:

◆ OnTouchSensor()

static Bool OnTouchSensor ( GF_SensorHandler sh,
Bool  is_over,
Bool  is_cancel,
GF_Event ev,
GF_Compositor *  compositor 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ touch_sensor_get_handler()

static GF_SensorHandler* touch_sensor_get_handler ( GF_Node n)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compositor_init_touch_sensor()

void compositor_init_touch_sensor ( GF_Compositor *  compositor,
GF_Node node 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ TraverseProximitySensor()

void TraverseProximitySensor ( GF_Node node,
void *  rs,
Bool  is_destroy 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compositor_init_proximity_sensor()

void compositor_init_proximity_sensor ( GF_Compositor *  compositor,
GF_Node node 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DestroyPlaneSensor()

static void DestroyPlaneSensor ( GF_Node node,
void *  rs,
Bool  is_destroy 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ ps_is_enabled()

static Bool ps_is_enabled ( GF_Node n)
static
+ Here is the caller graph for this function:

◆ OnPlaneSensor()

static Bool OnPlaneSensor ( GF_SensorHandler sh,
Bool  is_over,
Bool  is_cancel,
GF_Event ev,
GF_Compositor *  compositor 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ plane_sensor_get_handler()

static GF_SensorHandler* plane_sensor_get_handler ( GF_Node n)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compositor_init_plane_sensor()

void compositor_init_plane_sensor ( GF_Compositor *  compositor,
GF_Node node 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DestroyCylinderSensor()

static void DestroyCylinderSensor ( GF_Node node,
void *  rs,
Bool  is_destroy 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ cs_is_enabled()

static Bool cs_is_enabled ( GF_Node n)
static
+ Here is the caller graph for this function:

◆ OnCylinderSensor()

static Bool OnCylinderSensor ( GF_SensorHandler sh,
Bool  is_over,
Bool  is_cancel,
GF_Event ev,
GF_Compositor *  compositor 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ cylinder_sensor_get_handler()

static GF_SensorHandler* cylinder_sensor_get_handler ( GF_Node n)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compositor_init_cylinder_sensor()

void compositor_init_cylinder_sensor ( GF_Compositor *  compositor,
GF_Node node 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ DestroySphereSensor()

static void DestroySphereSensor ( GF_Node node,
void *  rs,
Bool  is_destroy 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ sphere_is_enabled()

static Bool sphere_is_enabled ( GF_Node n)
static
+ Here is the caller graph for this function:

◆ OnSphereSensor()

static Bool OnSphereSensor ( GF_SensorHandler sh,
Bool  is_over,
Bool  is_cancel,
GF_Event ev,
GF_Compositor *  compositor 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ sphere_get_handler()

static GF_SensorHandler* sphere_get_handler ( GF_Node n)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compositor_init_sphere_sensor()

void compositor_init_sphere_sensor ( GF_Compositor *  compositor,
GF_Node node 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ TraverseVisibilitySensor()

void TraverseVisibilitySensor ( GF_Node node,
void *  rs,
Bool  is_destroy 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compositor_init_visibility_sensor()

void compositor_init_visibility_sensor ( GF_Compositor *  compositor,
GF_Node node 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compositor_mpeg4_get_sensor_handler()

GF_SensorHandler* compositor_mpeg4_get_sensor_handler ( GF_Node n)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compositor_mpeg4_get_sensor_handler_ex()

GF_SensorHandler* compositor_mpeg4_get_sensor_handler_ex ( GF_Node n,
Bool  skip_anchors 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compositor_mpeg4_is_sensor_node()

Bool compositor_mpeg4_is_sensor_node ( GF_Node node)
+ Here is the call graph for this function:

◆ traverse_envtest()

static void traverse_envtest ( GF_Node node,
void *  rs,
Bool  is_destroy 
)
static
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ envtest_evaluate()

void envtest_evaluate ( GF_Node node,
GF_Route *  _route 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compositor_evaluate_envtests()

void compositor_evaluate_envtests ( GF_Compositor *  compositor,
u32  param_type 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compositor_envtest_modified()

void compositor_envtest_modified ( GF_Node node)
+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ compositor_init_envtest()

void compositor_init_envtest ( GF_Compositor *  compositor,
GF_Node node 
)
+ Here is the call graph for this function:
+ Here is the caller graph for this function: