FreeCalypso > hg > fc-magnetite
annotate src/aci2/mfw/mfw_utils.c @ 570:855b3c5bb4b5
.../cst/cst_exts.c: tab indentation fixes
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Sat, 12 Jan 2019 22:53:46 +0000 | 
| parents | 93999a60b835 | 
| children | 
| rev | line source | 
|---|---|
| 3 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2 +--------------------------------------------------------------------+ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 | PROJECT: MMI-Framework (8417) $Workfile:: mfw_utils.c $| | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 4 | $Author:: NDH $Revision:: 1 $| | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 5 | CREATED: 6.1.2003 $Modtime:: 10.04.00 14:58 $| | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 6 | STATE : code $| | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 7 +--------------------------------------------------------------------+ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 8 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 9 MODULE : MFW_UTILS | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 10 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 11 PURPOSE : This modul contains General Functional Utilities. | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 12 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 13 HISTORY: | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 14 Oct 04, 2004 REF: CRR 25519 Deepa M.D | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 15 Bug:Re-align structure members in MFW | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 16 Fix:Structure elements have been realigned to avoid the structure padding | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 17 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 18 Jun 05, 2004 REF: CRR 18262 NISHIKANT KULKARNI | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 19 Description: The sample sends a STOP DTMF message without release of the key by the user | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 20 Solution: Instead of sending DTMF commands in "VTS_MOD_Auto" mode, on key press DTMF tone is started | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 21 using VTS_MOD_ManStart and on key release DTMF tone is stopped using VTS_MOD_ManStop mode. | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 22 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 23 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 24 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 25 #include <string.h> | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 26 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 27 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 28 #if defined (NEW_FRAME) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 29 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 30 #include "typedefs.h" | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 31 #include "vsi.h" | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 32 #include "pei.h" | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 33 #include "custom.h" | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 34 #include "gsm.h" | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 35 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 36 #else | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 37 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 38 #include "STDDEFS.H" | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 39 #include "custom.h" | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 40 #include "gsm.h" | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 41 #include "vsi.h" | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 42 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 43 #endif | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 44 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 45 #include "mfw_mfw.h" | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 46 #include "mfw_utils.h" | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 47 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 48 #include "cus_aci.h" | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 49 #include "prim.h" | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 50 #ifndef PCM_2_FFS | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 51 #include "pcm.h" | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 52 #endif | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 53 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 54 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 55 // xnkulkar SPR-18262: This length of array for storing DTMF mode (Start/Stop), is equal to the number | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 56 // of DTMF tone requests that can be stored in queue. | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 57 #define MAX_DTMF_Q_ENTRIES 50 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 58 /***************************Go-lite Optimization changes start***********************/ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 59 //Oct 04, 2004 REF: CRR 25519 Deepa M.D | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 60 //Structure elements (T_MFW_CBUF_HEADER)are realigned to avoid the structure padding | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 61 typedef struct | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 62 { //xnkulkar SPR-18262: This member is used to store the mode for various DTMF tones present in queue to be sent. | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 63 UBYTE vts_mode[MAX_DTMF_Q_ENTRIES]; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 64 USHORT item_size; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 65 UBYTE *mfw_cb; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 66 ULONG mfw_cb_read_pos; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 67 ULONG mfw_cb_write_pos; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 68 USHORT num_elements; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 69 USHORT max_num_items; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 70 UBYTE null_char; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 71 UBYTE overwrite; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 72 UBYTE static_buf; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 73 UBYTE active; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 74 } T_MFW_CBUF_HEADER; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 75 /***************************Go-lite Optimization changes end***********************/ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 76 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 77 static T_MFW_CBUF_HEADER cbf_hdr[MAX_CBUF_QUEUES]; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 78 static UBYTE cbf_num_of_buffers; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 79 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 80 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 81 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 82 ** Static Function Prototypes | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 83 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 84 static SHORT mfw_cbuf_get_free_id(void); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 85 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 86 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 87 +--------------------------------------------------------------------+ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 88 | PROJECT: MMI-Framework (8417) MODULE: MFW_CBUF | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 89 | STATE : code ROUTINE: (static) mfw_cbuf_init | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 90 +--------------------------------------------------------------------+ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 91 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 92 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 93 PURPOSE : Create and Initialise the Circular Buffer | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 94 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 95 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 96 SHORT mfw_cbuf_create (USHORT max_num_items, USHORT item_size, | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 97 UBYTE overwrite, UBYTE null_char, | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 98 UBYTE static_buf, void *buffer_ptr) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 99 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 100 SHORT bufId; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 101 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 102 if (cbf_num_of_buffers < MAX_CBUF_QUEUES) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 103 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 104 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 105 ** Get the first available Id for a free buffer | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 106 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 107 bufId = mfw_cbuf_get_free_id(); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 108 if (bufId == MFW_CBUF_NO_BUFS_AVAILABLE) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 109 return (MFW_CBUF_NO_BUFS_AVAILABLE); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 110 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 111 else | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 112 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 113 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 114 ** return -1 as an indication that there are no more buffer handles available | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 115 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 116 return (MFW_CBUF_NO_BUFS_AVAILABLE); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 117 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 118 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 119 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 120 ** We now have a valid bufferId but check the validity of the incoming parameters | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 121 ** before we allocate the buffer. | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 122 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 123 if (item_size == 0) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 124 return (MFW_CBUF_INVALID_ITEM_SIZE); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 125 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 126 if (max_num_items == 0) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 127 return (MFW_CBUF_INVALID_MAX_ITEMS); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 128 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 129 if ((static_buf) && (buffer_ptr == (void *)0)) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 130 return (MFW_CBUF_INVALID_BUF_PTR); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 131 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 132 if ((!static_buf) && (buffer_ptr != (void *)0)) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 133 return (MFW_CBUF_INVALID_BUF_PTR); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 134 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 135 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 136 ** Set the selected buffer to active | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 137 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 138 cbf_hdr[bufId].active = TRUE; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 139 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 140 if (!static_buf) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 141 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 142 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 143 ** If the buffer isn't static, then get the dynamic memory for it. | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 144 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 145 cbf_hdr[bufId].mfw_cb = mfwAlloc(item_size * max_num_items); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 146 cbf_hdr[bufId].static_buf = FALSE; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 147 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 148 if (cbf_hdr[bufId].mfw_cb == (void *)0) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 149 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 150 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 151 ** The memory Allocation failed, mark the buffer as inactive and return an error | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 152 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 153 cbf_hdr[bufId].active = FALSE; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 154 return (MFW_CBUF_MEM_ALLOC_FAILURE); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 155 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 156 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 157 else | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 158 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 159 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 160 ** If the buffer is static, the calling function will have provided a | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 161 ** pointer to the buffer to be used. | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 162 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 163 cbf_hdr[bufId].mfw_cb = (UBYTE *)buffer_ptr; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 164 cbf_hdr[bufId].static_buf = TRUE; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 165 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 166 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 167 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 168 ** Initialise the buffer header which contains the information needed to | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 169 ** maintain the buffer | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 170 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 171 cbf_hdr[bufId].max_num_items = max_num_items; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 172 cbf_hdr[bufId].item_size = item_size; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 173 cbf_hdr[bufId].null_char = null_char; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 174 cbf_hdr[bufId].overwrite = overwrite; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 175 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 176 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 177 ** The buffer is created with no elements in it. | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 178 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 179 cbf_hdr[bufId].num_elements = 0; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 180 cbf_hdr[bufId].mfw_cb_read_pos = 0; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 181 cbf_hdr[bufId].mfw_cb_write_pos = 0; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 182 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 183 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 184 ** Ensure the buffer is initialised with the required null character | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 185 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 186 memset(cbf_hdr[bufId].mfw_cb, | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 187 cbf_hdr[bufId].null_char, | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 188 item_size * max_num_items); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 189 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 190 return (bufId); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 191 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 192 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 193 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 194 +--------------------------------------------------------------------+ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 195 | PROJECT: MMI-Framework (8417) MODULE: MFW_CBUF | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 196 | STATE : code ROUTINE: (static) mfw_cbuf_delete | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 197 +--------------------------------------------------------------------+ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 198 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 199 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 200 PURPOSE : delete a dynamically allocated buffer, freeing the memory | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 201 A statically allocated buffer CANNOT be released. | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 202 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 203 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 204 SHORT mfw_cbuf_delete (SHORT bufId) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 205 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 206 if ((bufId < 0) || (bufId >= MAX_CBUF_QUEUES)) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 207 return (MFW_CBUF_INVALID_BUF_ID); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 208 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 209 if (cbf_hdr[bufId].active == FALSE) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 210 return (MFW_CBUF_INVALID_BUF_ID); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 211 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 212 if (cbf_hdr[bufId].static_buf) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 213 return (MFW_CBUF_INVALID_STATIC_BUF); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 214 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 215 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 216 ** Free the dynamically allocated memory and set buffer to inactive | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 217 ** all the other information is irrelevant as once the buffer is marked inactive | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 218 ** it cannot be used. | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 219 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 220 mfwFree(cbf_hdr[bufId].mfw_cb, | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 221 cbf_hdr[bufId].item_size * cbf_hdr[bufId].max_num_items); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 222 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 223 cbf_hdr[bufId].active = FALSE; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 224 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 225 return (MFW_CBUF_OK); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 226 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 227 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 228 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 229 +--------------------------------------------------------------------+ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 230 | PROJECT: MMI-Framework (8417) MODULE: MFW_CBUF | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 231 | STATE : code ROUTINE: (static) mfw_cbuf_reset | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 232 +--------------------------------------------------------------------+ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 233 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 234 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 235 PURPOSE : clears all the data from the buffer and resets the read and write pointers. | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 236 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 237 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 238 SHORT mfw_cbuf_reset (SHORT bufId) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 239 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 240 if ((bufId < 0) || (bufId >= MAX_CBUF_QUEUES)) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 241 return (MFW_CBUF_INVALID_BUF_ID); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 242 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 243 if (cbf_hdr[bufId].active == FALSE) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 244 return (MFW_CBUF_INVALID_BUF_ID); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 245 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 246 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 247 ** The buffer is reset with no elements in it. | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 248 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 249 cbf_hdr[bufId].num_elements = 0; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 250 cbf_hdr[bufId].mfw_cb_read_pos = 0; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 251 cbf_hdr[bufId].mfw_cb_write_pos = 0; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 252 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 253 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 254 ** Ensure the buffer is initialised with the required null character | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 255 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 256 memset(cbf_hdr[bufId].mfw_cb, | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 257 cbf_hdr[bufId].null_char, | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 258 cbf_hdr[bufId].item_size * cbf_hdr[bufId].max_num_items); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 259 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 260 return (MFW_CBUF_OK); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 261 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 262 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 263 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 264 +--------------------------------------------------------------------+ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 265 | PROJECT: MMI-Framework (8417) MODULE: MFW_CBUF | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 266 | STATE : code ROUTINE: (static) mfw_cbuf_put | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 267 +--------------------------------------------------------------------+ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 268 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 269 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 270 PURPOSE : Add an item to the appropriate circular buffer | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 271 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 272 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 273 SHORT mfw_cbuf_put (SHORT bufId, void *data_ptr) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 274 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 275 if ((bufId < 0) || (bufId >= MAX_CBUF_QUEUES)) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 276 return (MFW_CBUF_INVALID_BUF_ID); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 277 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 278 if (cbf_hdr[bufId].active == FALSE) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 279 return (MFW_CBUF_INVALID_BUF_ID); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 280 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 281 if (data_ptr == (void *)0) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 282 return (MFW_CBUF_INVALID_BUF_PTR); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 283 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 284 if (cbf_hdr[bufId].num_elements < cbf_hdr[bufId].max_num_items) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 285 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 286 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 287 ** Standard Add data ... no data lost. | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 288 ** Memcpy the input data into the circular buffer | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 289 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 290 memcpy(&cbf_hdr[bufId].mfw_cb[cbf_hdr[bufId].mfw_cb_write_pos], | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 291 data_ptr, | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 292 cbf_hdr[bufId].item_size); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 293 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 294 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 295 ** Move the write_pointer along to the next required position | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 296 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 297 cbf_hdr[bufId].mfw_cb_write_pos = (cbf_hdr[bufId].mfw_cb_write_pos + cbf_hdr[bufId].item_size) % | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 298 (cbf_hdr[bufId].item_size * cbf_hdr[bufId].max_num_items); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 299 cbf_hdr[bufId].num_elements++; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 300 return (MFW_CBUF_OK); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 301 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 302 else if (cbf_hdr[bufId].overwrite) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 303 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 304 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 305 ** Overwrite Add data ... The oldest Data in the buffer is lost. | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 306 ** Memcpy the input data into the circular buffer | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 307 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 308 memcpy(&cbf_hdr[bufId].mfw_cb[cbf_hdr[bufId].mfw_cb_write_pos], | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 309 data_ptr, | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 310 cbf_hdr[bufId].item_size); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 311 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 312 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 313 ** Move the write_pointer along to the next required position | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 314 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 315 cbf_hdr[bufId].mfw_cb_write_pos = (cbf_hdr[bufId].mfw_cb_write_pos + cbf_hdr[bufId].item_size) % | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 316 (cbf_hdr[bufId].item_size * cbf_hdr[bufId].max_num_items); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 317 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 318 ** Move the read pointer along to the next required position as the data it points to | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 319 ** has been overwritten | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 320 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 321 cbf_hdr[bufId].mfw_cb_read_pos = (cbf_hdr[bufId].mfw_cb_read_pos + cbf_hdr[bufId].item_size) % | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 322 (cbf_hdr[bufId].item_size * cbf_hdr[bufId].max_num_items); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 323 return (MFW_CBUF_OK_DATA_LOSS); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 324 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 325 else | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 326 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 327 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 328 ** The Queue is full ... return an error | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 329 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 330 return (MFW_CBUF_PUT_FAILED_Q_FULL); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 331 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 332 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 333 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 334 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 335 +--------------------------------------------------------------------+ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 336 | PROJECT: MMI-Framework (8417) MODULE: MFW_CBUF | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 337 | STATE : code ROUTINE: (static) mfw_cbuf_get | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 338 +--------------------------------------------------------------------+ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 339 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 340 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 341 PURPOSE : Get an event from the DTMF Q | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 342 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 343 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 344 SHORT mfw_cbuf_get (SHORT bufId, void *buffer_ptr) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 345 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 346 if ((bufId < 0) || (bufId >= MAX_CBUF_QUEUES)) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 347 return (MFW_CBUF_INVALID_BUF_ID); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 348 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 349 if (cbf_hdr[bufId].active == FALSE) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 350 return (MFW_CBUF_INVALID_BUF_ID); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 351 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 352 if (buffer_ptr == (void *)0) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 353 return (MFW_CBUF_INVALID_BUF_PTR); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 354 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 355 if (cbf_hdr[bufId].num_elements != 0) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 356 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 357 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 358 ** Copy the data from the internal buffer into the output buffer, and reset the internal buffer | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 359 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 360 memcpy(buffer_ptr, | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 361 &cbf_hdr[bufId].mfw_cb[cbf_hdr[bufId].mfw_cb_read_pos], | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 362 cbf_hdr[bufId].item_size); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 363 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 364 memset(&cbf_hdr[bufId].mfw_cb[cbf_hdr[bufId].mfw_cb_read_pos], | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 365 cbf_hdr[bufId].null_char, | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 366 cbf_hdr[bufId].item_size); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 367 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 368 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 369 ** Move the read pointer along to the next required position | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 370 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 371 cbf_hdr[bufId].mfw_cb_read_pos = (cbf_hdr[bufId].mfw_cb_read_pos + cbf_hdr[bufId].item_size) % | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 372 (cbf_hdr[bufId].item_size * cbf_hdr[bufId].max_num_items); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 373 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 374 cbf_hdr[bufId].num_elements--; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 375 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 376 return (MFW_CBUF_OK); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 377 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 378 else | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 379 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 380 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 381 ** The Queue is empty ... put valid (null) data into the buffer and return an error | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 382 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 383 memset(buffer_ptr, | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 384 cbf_hdr[bufId].null_char, | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 385 cbf_hdr[bufId].item_size); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 386 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 387 return (MFW_CBUF_BUFFER_EMPTY); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 388 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 389 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 390 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 391 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 392 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 393 +-----------------------------------------------------------------------+ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 394 |xnkulkar SPR-18262 | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 395 |ROUTINE: SHORT mfw_cbuf_put_mode() | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 396 |PURPOSE : Put the mode (Start/Stop) for the DTMF tone in queue | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 397 | | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 398 +-----------------------------------------------------------------------+ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 399 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 400 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 401 SHORT mfw_cbuf_put_mode (SHORT bufId,UBYTE vts_mode) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 402 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 403 TRACE_FUNCTION("mfw_cbuf_put_mode()"); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 404 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 405 // Check for the validity of buffer ID and "limit" for the number of elements | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 406 // if ok, put the mode (Start / Stop) for the specified DTMF tone in the queue | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 407 if ((bufId < 0) || (bufId >= MAX_CBUF_QUEUES)) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 408 return MFW_CBUF_INVALID_BUF_ID; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 409 if (cbf_hdr[bufId].num_elements >= cbf_hdr[bufId].max_num_items) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 410 return MFW_CBUF_PUT_FAILED_Q_FULL; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 411 cbf_hdr[bufId].vts_mode[cbf_hdr[bufId].mfw_cb_write_pos] = vts_mode; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 412 return (MFW_CBUF_OK); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 413 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 414 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 415 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 416 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 417 +-----------------------------------------------------------------------+ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 418 |xnkulkar SPR-18262 | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 419 |ROUTINE: SHORT mfw_cbuf_get_mode() | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 420 |PURPOSE : Get the mode (Start/Stop) for the DTMF tone in queue | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 421 | | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 422 +-----------------------------------------------------------------------+ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 423 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 424 SHORT mfw_cbuf_get_mode (SHORT bufId) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 425 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 426 TRACE_FUNCTION("mfw_cbuf_get_mode()"); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 427 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 428 // Check for the validity of buffer ID and "limit" for the number of elements | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 429 // if ok, return the mode (Start / Stop) for the requested DTMF tone | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 430 if ((bufId < 0) || (bufId >= MAX_CBUF_QUEUES)) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 431 return MFW_CBUF_INVALID_BUF_ID; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 432 if (cbf_hdr[bufId].num_elements >= cbf_hdr[bufId].max_num_items) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 433 return MFW_CBUF_PUT_FAILED_Q_FULL; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 434 return cbf_hdr[bufId].vts_mode[cbf_hdr[bufId].mfw_cb_read_pos]; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 435 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 436 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 437 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 438 +--------------------------------------------------------------------+ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 439 | PROJECT: MMI-Framework (8417) MODULE: MFW_CBUF | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 440 | STATE : code ROUTINE: (static) mfw_cbuf_num_elements | | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 441 +--------------------------------------------------------------------+ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 442 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 443 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 444 PURPOSE : Get the number of events on the DTMF Q | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 445 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 446 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 447 USHORT mfw_cbuf_num_elements (SHORT bufId) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 448 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 449 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 450 ** In this function, if the buffer Id is invalid in any way, we will need to | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 451 ** return 0 for the number of elements and know that any other action on | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 452 ** the buffer will result in an error state. | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 453 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 454 if ((bufId < 0) || (bufId >= MAX_CBUF_QUEUES)) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 455 return (0); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 456 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 457 if (cbf_hdr[bufId].active == FALSE) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 458 return (0); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 459 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 460 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 461 ** Having got to here, the buffer id is valid so return the number of elements | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 462 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 463 return (cbf_hdr[bufId].num_elements); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 464 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 465 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 466 static SHORT mfw_cbuf_get_free_id(void) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 467 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 468 SHORT i; | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 469 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 470 for (i=0; i<MAX_CBUF_QUEUES; i++) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 471 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 472 if (cbf_hdr[i].active == FALSE) | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 473 { | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 474 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 475 ** This is the first inactive buffer, pass the index back | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 476 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 477 return (i); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 478 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 479 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 480 | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 481 /* | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 482 ** There are no inaqctive buffers, return an Error | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 483 */ | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 484 return (MFW_CBUF_NO_BUFS_AVAILABLE); | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 485 } | 
| 
93999a60b835
src/aci2, src/condat2: import of g23m/condat source pieces from TCS211
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 486 | 
