libmove3d  3.13.0
Classes | Defines | Typedefs | Functions
/home/slemaign/softs-local/BioMove3D-git/collision/p3d_collision_context.c File Reference

Collision context methodes. More...

#include "Util-pkg.h"
#include "P3d-pkg.h"
#include "Collision-pkg.h"

Classes

struct  collision_pair_env
 Structure to store the data of each environment. More...

Defines

#define COL_PAIR_STACK_MIN_SIZE   10
 Default stack size.

Typedefs

typedef struct collision_pair_env p3d_collision_pair_env
 Structure to store the data of each environment.

Functions

void p3d_col_pair_activate_col_env (p3d_collision_pair *pair, p3d_obj *obj)
 Add the collision test of a movable object with the environment.
void p3d_col_pair_activate_dist_env (p3d_collision_pair *pair, p3d_obj *obj)
 Add the distance computation of a movable object with the environment.
void p3d_col_pair_activate_env (p3d_collision_pair *pair, p3d_obj *obj)
 Add the test and the distance computation of a movable object with the environment.
void p3d_col_pair_activate_col_pair (p3d_collision_pair *pair, p3d_obj *obj1, p3d_obj *obj2)
 Add the collision test between two movable objects.
void p3d_col_pair_activate_dist_pair (p3d_collision_pair *pair, p3d_obj *obj1, p3d_obj *obj2)
 Add the distance computation between two movable objects.
void p3d_col_pair_activate_pair (p3d_collision_pair *pair, p3d_obj *obj1, p3d_obj *obj2)
 Add the test and the distance computation between two movable objects.
void p3d_col_pair_deactivate_col_env (p3d_collision_pair *pair, p3d_obj *obj)
 Deactive the test of a movable object with the environment.
void p3d_col_pair_deactivate_dist_env (p3d_collision_pair *pair, p3d_obj *obj)
 Deactive the distance computation of a movable object with the environment.
void p3d_col_pair_deactivate_env (p3d_collision_pair *pair, p3d_obj *obj)
 Deactive the test and the distance computation of a movable object with the environment.
void p3d_col_pair_deactivate_col_pair (p3d_collision_pair *pair, p3d_obj *obj1, p3d_obj *obj2)
 Deactive the test between two movable objects.
void p3d_col_pair_deactivate_dist_pair (p3d_collision_pair *pair, p3d_obj *obj1, p3d_obj *obj2)
 Deactive the distance computation between two movable objects.
void p3d_col_pair_deactivate_pair (p3d_collision_pair *pair, p3d_obj *obj1, p3d_obj *obj2)
 Deactive the test and the distance computation between two movable objects.
void p3d_col_pair_deactivate_all (p3d_collision_pair *pair)
 Deactive all the test of collisions.
int p3d_col_pair_is_test_col_env (p3d_collision_pair *pair, p3d_obj *obj)
 Show if there is a test of the movable object with the environment.
int p3d_col_pair_is_calc_dist_env (p3d_collision_pair *pair, p3d_obj *obj)
 Show if there is a distance computed of the movable object with the environment.
int p3d_col_pair_is_test_col_pair (p3d_collision_pair *pair, p3d_obj *obj1, p3d_obj *obj2)
 Show if there is a test between the two movable objects.
int p3d_col_pair_is_calc_dist_pair (p3d_collision_pair *pair, p3d_obj *obj1, p3d_obj *obj2)
 Show if there is a distance computed between the two movable objects.
void p3d_col_pair_add_into (p3d_collision_pair *src_pair, p3d_collision_pair *dest_pair)
 Add the test of collision in src_pair into the collision pair dest_pair.
void p3d_col_pair_sub_into (p3d_collision_pair *src_pair, p3d_collision_pair *dest_pair)
 Substract the test of collision in src_pair into the collision pair dest_pair.
void p3d_col_pair_copy_into (p3d_collision_pair *src_pair, p3d_collision_pair *dest_pair)
 Copy the test of collision in src_pair into the collision pair dest_pair.
p3d_collision_pairp3d_col_pair_create (void)
 Create a new collision pairs structure.
p3d_collision_pairp3d_col_pair_copy (p3d_collision_pair *pair)
 Create a new collision pair.
void p3d_col_pair_destroy (p3d_collision_pair *pair)
 Release the memory of a collision pair.
p3d_collision_pairp3d_col_pair_get_cur (void)
 Get the current collision pair.
void p3d_col_pair_copy_current_into (p3d_collision_pair *pair)
 Copy the current collision pair into pair.
p3d_collision_pairp3d_col_pair_copy_current (void)
 Create a new collision pair.
void p3d_col_pair_put (p3d_collision_pair *pair)
 Put the pair in the current pair.
void p3d_col_pair_push (void)
 Push the current collision pair in the stack ::current_collision_pair_stack.
void p3d_col_pair_push_and_put (p3d_collision_pair *pair)
 Push the current collision pair in the stack ::current_collision_pair_stack, and put pair as the new current collision pair.
void p3d_col_pair_pop (void)
 Restore a collision pair in the stack ::current_collision_pair_stack as the new current collision pair.
void p3d_col_pair_flush (void)
 Clear the stack ::current_collision_pair_stack.
void p3d_col_pair_clear (void)
 Release the memory used to manage current collision pair.
void p3d_col_pair_start (void)
 Initialize collision pair to start a new environment.
void p3d_col_pair_stop (void)
 Release the memory for collision pair in all environment.
void p3d_col_context_add_elem (p3d_collision_context **list_begin, void *param, p3d_collision_pair *pair)
 Add an element to a collision context.
void p3d_col_context_merge_elem (p3d_collision_context **list_begin, void *param, p3d_collision_pair *pair)
 Add an element to a list of collision context.
void p3d_col_context_del_elem (p3d_collision_context **list_begin, void *param, p3d_collision_pair *pair)
 Delete an element to a list of collision context.
void p3d_col_context_del_param (p3d_collision_context **list_begin, void *param)
 Delete all the element to a list of collision context with the given parameter.
p3d_collision_contextp3d_col_context_copy (p3d_collision_context *list_begin)
 Copy a list of collision context.
void p3d_col_context_destroy (p3d_collision_context **list_begin)
 Destroy a list of collision context.
void p3d_col_context_add (p3d_collision_context *src_context, p3d_collision_context **dest_context)
 Add two collision contexts into dest_context.
p3d_collision_pairp3d_col_context_sub (p3d_collision_context *src_context, p3d_collision_context *dest_context)
 Substract two collision contexts into dest_context.

Detailed Description

Collision context methodes.

These functions are the interface of the Collision pair structure (p3d_collision_pair) and to the Collision context (p3d_collision_context).

 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Defines