cpiWriteBuffer

Scopo

Scrive una struttura ad albero dell'elemento di sintassi nel buffer di messaggi associato ad un programma di analisi. Accoda i dati al flusso di bit nel buffer di messaggi associato all'oggetto programma di analisi, utilizzando come origine la struttura ad albero dell'elemento di sintassi attuale. La struttura ad albero dell'elemento non deve essere modificata durante l'esecuzione di questa funzione di implementazione. La funzione di utilità cpiAppendToBuffer può essere utilizzata per accodare il buffer di messaggi (flusso di bit) con i dati della struttura ad albero dell'elemento.

Se nella struttura CPI_VFT viene fornita questa funzione di implementazione, non è possibile specificare cpiWriteBufferEncoded()cpiWriteBufferFormatted() in quanto la funzione cpiDefineParserClass() avrà esito negativo e viene restituito il codice di ritorno CCI_INVALID_IMPL_FUNCTION.

Definito in Tipo Membro
CPI_VFT Condizionale iFpWriteBuffer

Sintassi

int cpiWriteBuffer(
  CciParser*  parser,
  CciContext*  context);

Parametri

parser
L'indirizzo dell'oggetto programma di analisi (input).
context
L'indirizzo del contesto che l'oggetto programma di analisi possiede (input).

Valori di restituzione

La dimensione in byte dei dati accodati al flusso di bit nel buffer.

Esempio

int cpiWriteBuffer(
  CciParser*  parser,
  CciContext* context
){
  PARSER_CONTEXT_ST* pc = (PARSER_CONTEXT_ST *)context ;
  int                initialSize = 0;
  int                  rc = 0;
  const void* a;
  CciByte b;

  
  initialSize = cpiBufferSize(&rc, parser);
  a = cpiBufferPointer(&rc, parser);
  b = cpiBufferByte(&rc, parser, 0);

  cpiAppendToBuffer(&rc, parser, (char *)"Some test data", 14);

  return cpiBufferSize(0, parser) - initialSize;
}
Concetti correlati
Programmi di analisi definiti dall'utente
Estensioni definite dall'utente
Attività correlate
Creazione di un programma di analisi in C
Riferimenti correlati
cpiWriteBufferEncoded
cpiWriteBufferFormatted
Funzioni di implementazione del programma di analisi in C
Informazioni particolari | Marchi | Download | Libreria | Supporto | Commenti
Copyright IBM Corporation 1999, 2006 Ultimo aggiornamento: ago 17, 2006
as08210_