mav_objListObjectAdd(3)

NAME
mav_objListObjectAdd - SMS management: object list.

LEVEL
Maverik Level 3

SYNTAX
int mav_objListObjectAdd(MAV_SMS *s, MAV_object *o);

int mav_objListObjectRmv(MAV_SMS *s, MAV_object *o);

int mav_objListEmpty(MAV_SMS *s, int *o);

int mav_objListIntersect(MAV_SMS *s, MAV_window *w, MAV_line *ln, MAV_objectIntersection *oi, MAV_object **o);

int mav_objListPointerReset(MAV_SMS *s);

int mav_objListPointerPush(MAV_SMS *s);

int mav_objListPointerPop(MAV_SMS *s);

int mav_objListObjectNext(MAV_SMS *s, MAV_object **o);

int mav_objListExecFn(MAV_SMS *s, MAV_drawInfo *di, MAV_SMSExecFn *fn);

int mav_objListDelete(MAV_SMS *s, int *o);

int mav_objListSize(MAV_SMS *s, int *sz);

DESCRIPTION
These are the callback routines for the Object List class of SMS. Each of these functions is registered for an SMS of this class on Maverik initialisation.

mav_objListObjectAdd
    adds object o to SMS s.

mav_objListObjectRmv
    removes object o from SMS s.

mav_objListEmpty
    empties SMS s.

mav_objListIntersect
    returns in o the object in the SMS with the closest intersection with line ln. If an intersection is detected, the closest intersection point is returned in oi, and the result of the function is MAV_TRUE. If no intersection is detected, the result of the function is MAV_FALSE.

mav_objListPointerReset
    resets the SMS pointer to the start of the SMS.

mav_objListPointerPush
    pushes the SMS pointer onto the pointer stack.

mav_objListPointerPop
    pops the SMS pointer off the pointer stack.

mav_objListObjectNext
    returns in o the object at the current pointer position in the SMS.

mav_objListExecFn
    executes the callback function fn, passing it drawing information di.

mav_objListDelete
    deletes object o from SMS s.

mav_objListSize
    returns in sz the number of objects in SMS s.