FreeCalypso > hg > fc-magnetite
annotate src/g23m-aci/aci/aci_lst.c @ 678:edaceb78719a
doc/Leonardo-target: Tango unused Calypso signals update
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Sat, 20 Jun 2020 05:08:39 +0000 | 
| parents | 53929b40109c | 
| children | 
| rev | line source | 
|---|---|
| 162 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2 +----------------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 | Project : GSM-PS (6147) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 4 | Modul : aci_lst | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 5 +----------------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 6 | Copyright 2002 Texas Instruments Berlin, AG | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 7 | All rights reserved. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 8 | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 9 | This file is confidential and a trade secret of Texas | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 10 | Instruments Berlin, AG | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 11 | The receipt of or possession of this file does not convey | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 12 | any rights to reproduce or disclose its contents or to | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 13 | manufacture, use, or sell anything it may describe, in | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 14 | whole, or in part, without the specific written consent of | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 15 | Texas Instruments Berlin, AG. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 16 +----------------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 17 | Purpose : Process lists in ACI | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 18 +----------------------------------------------------------------------------- | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 19 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 20 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 21 #ifndef ACI_LST_C | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 22 #define ACI_LST_C | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 23 #endif | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 24 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 25 #include "aci_all.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 26 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 27 /*==== INCLUDES ===================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 28 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 29 #include "aci_lst.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 30 #include "aci_mem.h" | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 31 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 32 /*==== CONSTANTS ==================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 33 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 34 /*==== EXPORT =====================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 35 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 36 /*==== VARIABLES ==================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 37 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 38 /*==== FUNCTIONS ==================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 39 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 40 /*==== TYPES ======================================================*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 41 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 42 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 43 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 44 +--------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 45 | PROJECT : GSM-F&D (8411) MODULE : ACI_LST | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 46 | STATE : code ROUTINE : new_list | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 47 +--------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 48 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 49 PURPOSE : create a new list. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 50 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 51 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 52 GLOBAL T_ACI_LIST *new_list (void) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 53 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 54 T_ACI_LIST *new_elem = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 55 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 56 ACI_MALLOC(new_elem, sizeof(T_ACI_LIST)); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 57 new_elem->msg = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 58 new_elem->next = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 59 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 60 return (new_elem); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 61 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 62 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 63 GLOBAL USHORT get_list_count (T_ACI_LIST *list) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 64 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 65 T_ACI_LIST *curr; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 66 USHORT count = 0; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 67 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 68 curr = list; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 69 while (curr NEQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 70 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 71 if (curr->msg NEQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 72 count++; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 73 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 74 curr = curr->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 75 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 76 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 77 return (count); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 78 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 79 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 80 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 81 +--------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 82 | PROJECT : GSM-F&D (8411) MODULE : ACI_LST | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 83 | STATE : code ROUTINE : insert_list | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 84 +--------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 85 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 86 PURPOSE : insert a new element in an existing list. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 87 - list: pointer to the list where the element is to be added | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 88 - buffer: pointer to the buffer containing the datas that are to | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 89 be written in the new element. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 90 - buffer_len: length of the datas to be stored. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 91 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 92 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 93 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 94 GLOBAL BOOL insert_list (T_ACI_LIST *list, void *buffer) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 95 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 96 T_ACI_LIST *current; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 97 T_ACI_LIST *new_elem; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 98 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 99 if (list EQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 100 return (FALSE); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 101 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 102 if (list->msg EQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 103 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 104 list->msg = buffer; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 105 return (TRUE); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 106 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 107 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 108 ACI_MALLOC(new_elem, sizeof(T_ACI_LIST)); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 109 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 110 new_elem->msg = buffer; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 111 new_elem->next = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 112 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 113 current = list; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 114 while (current->next NEQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 115 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 116 current = (T_ACI_LIST *)current->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 117 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 118 current->next = new_elem; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 119 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 120 return TRUE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 121 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 122 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 123 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 124 +--------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 125 | PROJECT : GSM-F&D (8411) MODULE : ACI_LST | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 126 | STATE : code ROUTINE : find_element | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 127 +--------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 128 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 129 PURPOSE : find an element in a list: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 130 - search_list: list to be scanned. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 131 - criterium: search criterium. (source Id for instance) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 132 - test_criterium: function(criterium, element) that returns TRUE if | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 133 the criterium is found in the element. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 134 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 135 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 136 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 137 GLOBAL void *find_element (T_ACI_LIST *search_list, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 138 UBYTE criterium, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 139 T_LIST_FIND_FCT test_criterium) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 140 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 141 T_ACI_LIST *current; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 142 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 143 if ((search_list EQ NULL) OR (search_list->msg EQ NULL)) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 144 return NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 145 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 146 current = search_list; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 147 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 148 do | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 149 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 150 if (current->msg NEQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 151 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 152 if (test_criterium(criterium, current->msg)) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 153 return (current->msg); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 154 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 155 current = current->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 156 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 157 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 158 while( current NEQ NULL ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 159 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 160 return NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 161 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 162 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 163 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 164 +--------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 165 | PROJECT : GSM-F&D (8411) MODULE : ACI_LST | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 166 | STATE : code ROUTINE : psi_find_element | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 167 +--------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 168 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 169 PURPOSE : find an element in a list: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 170 - search_list: list to be scanned. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 171 - criterium: search criterium. (source Id for instance) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 172 - test_criterium: function(criterium, element) that returns TRUE if | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 173 the criterium is found in the element. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 174 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 175 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 176 #ifdef FF_PSI | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 177 GLOBAL void *psi_find_element (T_ACI_LIST *search_list, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 178 U32 criterium, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 179 T_LIST_FIND_FCT_PSI test_criterium) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 180 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 181 T_ACI_LIST *current; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 182 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 183 if ((search_list EQ NULL) OR (search_list->msg EQ NULL)) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 184 return NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 185 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 186 current = search_list; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 187 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 188 do | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 189 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 190 if (current->msg NEQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 191 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 192 if (test_criterium(criterium, current->msg)) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 193 return (current->msg); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 194 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 195 current = current->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 196 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 197 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 198 while( current NEQ NULL ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 199 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 200 return NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 201 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 202 #endif /*FF_PSI*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 203 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 204 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 205 +--------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 206 | PROJECT : GSM-F&D (8411) MODULE : ACI_LST | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 207 | STATE : code ROUTINE : find_next_element | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 208 +--------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 209 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 210 PURPOSE : find the next element in a list: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 211 - search_list: list to be scanned. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 212 - previous element | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 213 - criterium: search criterium. (source Id for instance) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 214 - test_criterium: function(criterium, element) that returns TRUE if | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 215 the criterium is found in the element. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 216 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 217 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 218 GLOBAL void *find_next_element (T_ACI_LIST *search_list, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 219 void *prev_elem, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 220 UBYTE criterium, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 221 T_LIST_FIND_FCT test_criterium) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 222 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 223 T_ACI_LIST *current; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 224 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 225 if ((search_list EQ NULL) OR (search_list->msg EQ NULL)) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 226 return NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 227 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 228 current = search_list; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 229 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 230 if (prev_elem NEQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 231 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 232 while (current NEQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 233 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 234 if (current->msg EQ prev_elem) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 235 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 236 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 237 current = current->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 238 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 239 if ((current EQ NULL) OR (current->next EQ NULL)) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 240 return (NULL); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 241 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 242 current = current->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 243 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 244 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 245 do | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 246 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 247 if( test_criterium(criterium, current->msg) ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 248 return (current->msg); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 249 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 250 current = current->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 251 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 252 while( current NEQ NULL ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 253 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 254 return NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 255 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 256 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 257 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 258 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 259 +--------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 260 | PROJECT : GSM-F&D (8411) MODULE : ACI_LST | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 261 | STATE : code ROUTINE : find_next_element | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 262 +--------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 263 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 264 PURPOSE : find the next element in a list: | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 265 - search_list: list to be scanned. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 266 - previous element | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 267 - criterium: search criterium. (source Id for instance) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 268 - test_criterium: function(criterium, element) that returns TRUE if | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 269 the criterium is found in the element. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 270 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 271 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 272 #ifdef FF_PSI | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 273 GLOBAL void *psi_find_next_element (T_ACI_LIST *search_list, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 274 void *prev_elem, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 275 U32 criterium, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 276 T_LIST_FIND_FCT_PSI test_criterium) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 277 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 278 T_ACI_LIST *current; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 279 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 280 if ((search_list EQ NULL) OR (search_list->msg EQ NULL)) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 281 return NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 282 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 283 current = search_list; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 284 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 285 if (prev_elem NEQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 286 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 287 while (current NEQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 288 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 289 if (current->msg EQ prev_elem) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 290 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 291 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 292 current = current->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 293 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 294 if ((current EQ NULL) OR (current->next EQ NULL)) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 295 return (NULL); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 296 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 297 current = current->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 298 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 299 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 300 do | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 301 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 302 if( test_criterium(criterium, current->msg) ) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 303 return (current->msg); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 304 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 305 current = current->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 306 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 307 while( current NEQ NULL ); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 308 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 309 return NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 310 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 311 #endif /*FF_PSI*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 312 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 313 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 314 +--------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 315 | PROJECT : GSM-F&D (8411) MODULE : ACI_LST | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 316 | STATE : code ROUTINE : remove_element | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 317 +--------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 318 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 319 PURPOSE : remove a element from the list. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 320 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 321 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 322 GLOBAL void *remove_element (T_ACI_LIST *search_list, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 323 UBYTE criterium, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 324 T_LIST_FIND_FCT test_criterium) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 325 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 326 T_ACI_LIST *previous = NULL, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 327 *current = search_list, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 328 *next = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 329 void *msg = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 330 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 331 current = search_list; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 332 while (current NEQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 333 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 334 if (test_criterium (criterium, current->msg)) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 335 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 336 msg = current->msg; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 337 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 338 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 339 previous = current; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 340 current = current->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 341 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 342 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 343 if (current EQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 344 return (NULL); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 345 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 346 if (msg EQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 347 return (NULL); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 348 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 349 /* the first element is to delete */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 350 if (previous EQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 351 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 352 /* the header contains the element */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 353 if (current->next EQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 354 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 355 /* one element in list */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 356 current->msg = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 357 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 358 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 359 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 360 /* actually deletes the second element and redirects the pointers */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 361 next = current->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 362 current->msg = next->msg; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 363 current->next = next->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 364 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 365 ACI_MFREE (next); } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 366 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 367 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 368 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 369 previous->next = current->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 370 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 371 ACI_MFREE (current); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 372 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 373 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 374 return (msg); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 375 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 376 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 377 #ifdef FF_PSI | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 378 GLOBAL void *psi_remove_element (T_ACI_LIST *search_list, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 379 U32 criterium, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 380 T_LIST_FIND_FCT_PSI test_criterium) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 381 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 382 T_ACI_LIST *previous = NULL, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 383 *current = search_list, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 384 *next = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 385 void *msg = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 386 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 387 current = search_list; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 388 while (current NEQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 389 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 390 if (test_criterium (criterium, current->msg)) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 391 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 392 msg = current->msg; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 393 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 394 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 395 previous = current; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 396 current = current->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 397 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 398 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 399 if (current EQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 400 return (NULL); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 401 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 402 if (msg EQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 403 return (NULL); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 404 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 405 /* the first element is to delete */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 406 if (previous EQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 407 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 408 /* the header contains the element */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 409 if (current->next EQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 410 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 411 /* one element in list */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 412 current->msg = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 413 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 414 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 415 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 416 /* actually deletes the second element and redirects the pointers */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 417 next = current->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 418 current->msg = next->msg; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 419 current->next = next->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 420 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 421 ACI_MFREE (next); } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 422 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 423 else | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 424 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 425 previous->next = current->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 426 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 427 ACI_MFREE (current); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 428 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 429 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 430 return (msg); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 431 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 432 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 433 #endif /*FF_PSI*/ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 434 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 435 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 436 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 437 +--------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 438 | PROJECT : GSM-F&D (8411) MODULE : ACI_LST | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 439 | STATE : code ROUTINE : remove_first_element | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 440 +--------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 441 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 442 PURPOSE : get and remove the first element from the list | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 443 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 444 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 445 GLOBAL void *remove_first_element (T_ACI_LIST *search_list) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 446 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 447 T_ACI_LIST *next = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 448 void *msg = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 449 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 450 if ((search_list EQ NULL) OR (search_list->msg EQ NULL)) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 451 return (NULL); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 452 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 453 msg = search_list->msg; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 454 search_list->msg = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 455 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 456 if (search_list->next EQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 457 return (msg); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 458 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 459 next = search_list->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 460 search_list->next = next->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 461 search_list->msg = next->msg; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 462 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 463 ACI_MFREE (next); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 464 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 465 return (msg); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 466 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 467 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 468 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 469 +--------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 470 | PROJECT : GSM-F&D (8411) MODULE : ACI_LST | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 471 | STATE : code ROUTINE : get_first_element | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 472 +--------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 473 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 474 PURPOSE : get the next element from the list | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 475 - search_list: list to be scanned. | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 476 - previous element | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 477 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 478 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 479 GLOBAL void *get_next_element (T_ACI_LIST *search_list, | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 480 void *prev_elem) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 481 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 482 T_ACI_LIST *current; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 483 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 484 if ((search_list EQ NULL) OR (search_list->msg EQ NULL)) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 485 return NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 486 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 487 if (prev_elem EQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 488 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 489 /* return first element */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 490 return (search_list->msg); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 491 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 492 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 493 current = search_list; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 494 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 495 /* search the previous element */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 496 while (current NEQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 497 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 498 if (current->msg EQ prev_elem) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 499 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 500 break; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 501 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 502 current = current->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 503 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 504 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 505 /* last entry found or previous entry not found */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 506 if ((current EQ NULL) OR (current->next EQ NULL)) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 507 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 508 return (NULL); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 509 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 510 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 511 return (current->next->msg); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 512 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 513 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 514 /* | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 515 +---------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 516 | PROJECT : GSM-F&D (8411) MODULE : ACI_LST | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 517 | STATE : code ROUTINE : insert_shift_list | | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 518 +---------------------------------------------------------------------+ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 519 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 520 PURPOSE : | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 521 */ | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 522 GLOBAL BOOL insert_shift_list (T_ACI_LIST *list, void *buffer) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 523 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 524 T_ACI_LIST *current; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 525 T_ACI_LIST *new_elem; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 526 void *old_buf; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 527 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 528 if (list EQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 529 return (FALSE); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 530 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 531 if (list->msg EQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 532 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 533 list->msg = buffer; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 534 return (TRUE); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 535 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 536 else if (list->next EQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 537 return (FALSE); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 538 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 539 current = list; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 540 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 541 old_buf = list->msg; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 542 list->msg = list->next->msg; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 543 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 544 new_elem = list->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 545 list->next = list->next->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 546 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 547 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 548 new_elem->msg = buffer; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 549 new_elem->next = NULL; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 550 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 551 while (current->next NEQ NULL) | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 552 { | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 553 current = (T_ACI_LIST *)current->next; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 554 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 555 current->next = new_elem; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 556 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 557 ACI_MFREE (old_buf); | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 558 | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 559 return TRUE; | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 560 } | 
| 
53929b40109c
src/g23m-aci: initial import from TCS3.2/LoCosto
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 561 /**********************************************************************/ | 
