Finalidad
Obtiene un solo byte del almacenamiento intermedio que contiene
la representación de corriente de bits del mensaje de entrada, para el objeto de
analizador especificado. El valor del argumento de índice indica qué byte de la matriz de
bytes se debe devolver.
Sintaxis
CciByte cpiBufferByte(
int* returnCode,
CciParser* parser,
CciSize index);
Parámetros
- returnCode
- Recibe el código de retorno de la función (salida).
Los códigos de
retorno posibles son:
- CCI_SUCCESS
- CCI_EXCEPTION
- CCI_INV_PARSER_OBJECT
- CCI_NO_BUFFER_EXISTS
- parser
- Especifica la dirección del objeto de analizador (entrada).
- index
- Especifica el desplazamiento que se debe utilizar como índice en el almacenamiento
intermedio (entrada).
Valores de retorno
Se devuelve el byte solicitado. Si se produce un error,
returnCode indica la razón del mismo.
Ejemplo
Este ejemplo se ha tomado del archivo de analizador
de ejemplo BipSampPluginParser.c (líneas 61 a 75):
void advance(
PARSER_CONTEXT_ST* context,
CciParser* parser
){
int rc = 0;
/* Avanzar al siguiente carácter */
context->iIndex++;
/* Detectar y manejar la condición de fin */
if (context->iIndex == context->iSize) return;
/* Obtener el siguiente carácter del almacenamiento intermedio */
context->iCurrentCharacter = cpiBufferByte(&rc, parser, context->iIndex);
}