Abilitare JavaScript per vedere questo sito.

Esecuzione di una sequenza di download.

Sintassi

bool download_sequence(const bcc::message @cmd, bcc::message @asw, array<bcc::message @> @msgs)

bool download_sequence(const bcc::message @cmd, bcc::message @asw, array<bcc::message @> @msgs, bcc::connector::update_state_cb @&in cb)

cmd

Riferimento a messaggio di comando

asw

Riferimento a messaggio di risposta

msgs

Array di messaggi ricevuti

cb

Funzione di callback per aggiornamento stato operazione

Risultato

Rende true se comando con successo, false altrimenti

Note

I messaggi ricevuti vengono accordati ad eventuale contenuto già presente nell'array di destinazione specificato (msgs).

Per ulteriori informazioni, consultare le specifiche di protocollo BCC/31.

L'operazione è bloccante e può impiegare molto tempo, in proporzione al quantitativo di dati da trasferire.

Esempio di utilizzo:

/* Funzione di esecuzione comando */

void do_flash_dir(bcc::client @client)

{

  bcc::message cmd, asw;

  array<bcc::message@> msgs;

 

  cmd.msg = bcc::msg::flash_dir;

  cmd.len = 4;

  cmd.set_uint32(0, 0x14f);

  cmd.len += cmd.set_string(4, "/fa/");

 

  if (client.download_sequence(cmd, asw, msgs, state_cb))

  {

    for (uint i = 0; i < msgs.size(); i++)

    {

      bcc::message @msg = msgs[i]

      trace("asw[" + i + "] = '" msg.get_string(20) + "'");

    }

    else

    {

      trace("failure, " + client.decode_nack(asw));

    }

  }

}

 

/* Funzione di call back per stato */

void state_cb(const string &in state, int progress)

{

  trace("state_cb, state='" + state + "' progress=" + progress);

}

 

 

  

Keyboard Navigation

F7 for caret browsing
Hold ALT and press letter

This Info: ALT+q
Page Header: ALT+h
Topic Header: ALT+t
Topic Body: ALT+b
Contents: ALT+c
Search: ALT+s
Exit Menu/Up: ESC