Home | History | Annotate | Download | only in lib

Lines Matching full:item

78 #define PICOPAM_NA    22 /*PAM has not to deal with this item*/
79 #define PICOPAM_ERR 23 /*input item is not a valid item*/
102 #define PICOPAM_STATE_SIZE_IN_ITEM 6 /*size of a state in frame item */
130 /* byte 61 : 1st attached non PAM item id(0=no item attached) */
132 /* byte 62 : last attached non PAM item id(0=no item attached)*/
175 picoos_uint8 nLastAttachedItemId;/*last attached item id*/
176 picoos_uint8 nCurrAttachedItem; /*current attached item*/
275 #define bnd 6 /*boundary type item associated to the syllable = P7 */
329 #define ITM 60 /*Item Offset into sSyllItems item list*/
330 #define itm 61 /*second byte of the Item Offset */
400 static pico_status_t pam_deal_with(const picoos_uint8 *item);
403 picoos_uint8 *item, picoos_uint8 *pos);
441 /*-------------- FINAL ITEM FEEDING -----------------------------------------*/
917 * verifies that local storage has enough space to receive 1 item
919 * @param item : pointer to current item head
920 * @return TRUE : resource limits would be reached during processing of input item
921 * @return FALSE : item could be processed normally
922 * @remarks item pointed to by *item should be already valid
927 register picodata_ProcessingUnit this, const picoos_uint8 *item)
937 head.type = item[0];
938 head.info1 = item[1];
939 head.info2 = item[2];
940 head.len = item[3];
979 return FALSE; /*no resource limits apply to current item*/
985 * @param item : pointer to current item head
986 * @return TRUE : item should be passed on next PU NOW
987 * @return FALSE : item should not be passed on next PU now but should be processed
988 * @remarks item pointed to by *item should be already valid
993 const picoos_uint8 *item)
1002 if (item[0] == PICODATA_ITEM_SYLLPHON)
1004 if ((item[0] == PICODATA_ITEM_BOUND) && (item[1]
1007 if (is_pam_command((picoos_uint8 *) item) == TRUE)
1016 * checks if the input item has to be queued in local storage for later resynch
1018 * @param item : pointer to current item head
1019 * @return TRUE : item should be queued
1020 * @return FALSE : item should not be queued
1021 * @remarks item pointed to by *item should be already valid
1026 const picoos_uint8 *item)
1034 head.type = item[0];
1035 head.info1 = item[1];
1056 return TRUE; /*item has to be queued*/
1060 * queue item in local storage for later resynch
1062 * @param item : pointer to current item head
1063 * @return TRUE : item queued
1064 * @return FALSE : item not queued because of errors
1065 * @remarks item pointed to by *item should be already valid
1070 const picoos_uint8 *item)
1080 sResult = TRUE; /*default : item queued*/
1081 head.type = item[0];
1082 head.info1 = item[1];
1083 head.info2 = item[2];
1084 head.len = item[3];
1086 /*test condition on enough room to store current item in the "sSyllItems" area*/
1093 /*store the item to the "sSyllItems" area*/
1095 pam->sSyllItems[pam->nAttachedItemsSize + nI] = item[nI];
1104 /*normal case : the item is attached to current syllable*/
1112 /*special case : an item is requested to be queued even if no
1120 return TRUE; /*item queued successfully*/
1125 * @param item : pointer to current item head
1126 * @return TRUE : item should be processed
1127 * @return FALSE : item should not be processed (maybe it ontains commands or items for other PUs)
1128 * @remarks item pointed to by *item should be already valid
1132 static pico_status_t pam_deal_with(const picoos_uint8 *item)
1137 head.type = item[0];
1138 head.info1 = item[1];
1139 head.info2 = item[2];
1140 head.len = item[3];
1155 * @return TRUE : item is to be produced
1156 * @return FALSE : item is not to be produced
1157 * @remarks item pointed to by *item should be already valid
1183 * modifies the process flags in order to point to next valid syllable phone or item to be produced
1185 * @return TRUE : item has to be produced
1186 * @return FALSE : item has not to be produced
1216 /*if it is the first item to be regenerated initialize it*/
1221 /*not the first item : check if more*/
1247 * @return TRUE : item has to be popped
1248 * @return FALSE : item has not to be popped
1269 /*Preliminary condition : start and end offset in current item > 0 */
1274 /*Final condition : current popped item less or eq to maximum*/
1283 * returns the address of an item to be popped from the current syllable queue
1285 * @return pop_address : item address
1286 * @return NULL : item not poppable
1307 /*Preliminary condition : start and end offset in current item > 0 */
1312 /*Final condition : current popped item less than maximum*/
1324 * returns the address of an item popped from the syllable 0 queue
1326 * @return pop_address : item address
1327 * @return NULL : item not poppable
1328 * @remarks the item is popped only if it has been inserted in the queue before the first
1329 * @remarks item assigned to the syllable 0 i.e.
1347 /*start and end offset in current item > 0 */
1352 /*if current popped item is > 0 test end condition*/
1354 /*Other condition : current popped item less than maximum*/
1886 * puts a PAM item into PU output buffer
1909 sDest[0] = PICODATA_ITEM_PHONE; /*Item type*/
1912 sDest[3] = sizeof(picoos_uint16) * PICOPAM_NRSTPF * 3; /*size of the item*/
1979 * puts a non PAM (queued) item into PU output buffer
1980 * @param qItem : pointer to item to put
2003 * tells if an item is a PAM command (except play)
2004 * @param qItem : input item to test
2030 * tells if an item is a PAM PLAY command
2031 * @param qItem : input item to test
2056 * @param this : Pam item subobject
2057 * @param qItem : input item pointer
2116 * defines if an item has to be sent to following PUs
2117 * @param qItem : input item pointer
2118 * @return TRUE : item has to be transmitted to following PUs
2119 * @return FALSE : item has to be consumed internallz on PAM
2156 * pushes a boundary TERM item into some buffer
2170 sDest[0] = PICODATA_ITEM_BOUND; /*Item type*/
2173 sDest[3] = 0; /*item size*/
2179 * translates one full phone into a PHONE Item including DT Dur, F0 and CEP trees feature generation and traversal
2180 * @param this : Pam item subobject pointer
2240 /*put item to output buffer*/
2251 * @param this : Pam item subobject pointer
2275 pam_put_qItem(qItem, pam->outBuf, pam->outWritePos, &bWr);/*popped item has to be sent to next PU*/
2281 nRc = pamDoCommand(this, qItem); /*popped item is a PAM command : do it NOW!!*/
2293 /*SBEG item management*/
2306 * @param this : Pam item subobject pointer
2347 /* *************** item collector ***********************************/
2358 PICODBG_DEBUG(("pam_step(PICOPAM_COLLECT) -- Errors on item buffer input, status: %d",sResult));
2363 PICODBG_DEBUG(("pam_step -- got item, status: %d",sResult));
2367 /*input item is not valid : consume the input item and stay in COLLECT*/
2373 }PICODBG_DEBUG(("pam_step -- item is not valid, type: %d",pam->inBuf[pam->inWritePos]));
2389 /* we have one full valid item, with len>0 starting at
2394 /*consume the input item : it has been managed*/
2406 /* item has to be sent to next PU NOW : switch to "immediate" state */
2411 /* item would not fit into local buffers -->> free some space -->>
2418 /* item has to be managed by the "forward" state : switch to forward state*/
2424 /* item is not for PAM so it has to be queued internally */
2426 /*consume the input item : it has been queued*/
2435 /*if we get here something wrong happened. Being the the item valid,
2437 PICODBG_DEBUG(("pam_step (PICOPAM_SCHEDULE) -- unexpected item is sent to next PU !!"));
2443 /*we have one full valid item, with len>0 starting at pam->inBuf[pam->inReadPos].
2444 furthermore this item should be in the set {BOUND,SYLL}.
2448 /*decide if this item has to be queued for later re-synchronization
2451 /*item has to be queued iternally in local storage*/
2458 /*consume the input item : it has already been stored*/
2484 /*consume the input item : it has already been stored*/
2504 /*this item has not been stored in internal buffers:
2505 assign this item to the management of
2514 /*we have one full valid item, with len>0
2516 to force a TERM item before, without losing the item in
2517 inBuf[inReadPos] : --> generate a TERM item and do the
2623 /*popped item has to be sent to next PU*/
2627 PICODBG_DEBUG(("pam_step(PICOPAM_PROCESS) --- Error on writing item to output buffer"));
2630 pam->outWritePos += bWr; /*item write ok*/
2637 sResult = pamDoCommand(this, qItem); /*popped item is a PAM command : do it NOW!!*/
2658 /* *** item is output NOW!!! */
2659 /*context: full valid item, with len> starting at pam->inBuf[pam->inReadPos]*/
2689 /* *************** item output/feeding ***********************************/
2694 PICODBG_DEBUG(("pam_step -- put item, status: %d",sResult));
2749 PICODBG_DEBUG(("pam_step ** feeding problem, discarding item"));
2771 * @param this : Pam item subobject pointer
2817 * @param this : Pam item subobject pointer
2818 * @param item : the full syllable item
2825 picoos_uint8 *item, picoos_uint8 *pos)
2834 if (item == NULL)
2836 if (item[3] == 0)
2838 phon = &item[4];
2839 for (nI = 0; nI < item[3]; nI++) {
2872 * @param iteminfo1 : the boundary item info 1
2873 * @param iteminfo2 : the boundary item info 2
2899 * @param iteminfo1 : the boundary item info 1
2900 * @param iteminfo2 : the boundary item info 2
4213 * @param sContent : the item content
4251 /*check item availability*/
4270 /*do not cleanup "attached item offset" fields (ITM, itm):
4271 an already existing attached item could be lost*/
4273 /*cleanup "attached item offset"*/
4277 /*cleanup all fields except "attached item offset" (ITM, itm)*/
4392 * @param itemBase : pointer to current item
4414 /*received a boundary item*/
4424 /*only when the item len duration is equal to 2 int16 --> get the values*/
4544 /*received a syllable item*/
4653 * @remarks pam->nCurrSyllable should point to a pause item