O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

nl::Weave::Profiles::BDX_Development::SendInit

#include <src/lib/profiles/bulk-data-transfer/Development/BDXMessages.h>

A mensagem SendInit é usada para iniciar uma troca quando o remetente é o iniciador.

Resumo

Herança

Subclasses conhecidas conhecidas: nl::Weave::Profiles::BDX_Development::ReceiveInit

Construtores e destruidores

SendInit(void)

Tipos públicos

MetaDataTLVWriteCallback)(uint8_t *aBuffer, uint16_t aBufferLength, uint16_t &aNumBytesWritten, void *aAppState) typedef
MetaDataTLVWriteCallback fornece um meio pelo qual um cliente pode fornecer um SendInit com todos os metadados que ele quiser.

Atributos públicos

mAsynchronousModeSupported
bool
Verdadeiro se for compatível com o modo assíncrono.
mDefiniteLength
bool
Verdadeiro se o campo de comprimento estiver presente.
mFileDesignator
String que contém informações pré-negociadas.
mLength
uint64_t
Comprimento proposto dos dados na transferência, 0 para um valor indefinido.
mMaxBlockSize
uint16_t
É o tamanho máximo do bloco proposto para uso na transferência.
mMetaData
Metadados TLV opcionais.
mMetaDataAppState
void *
Estado opcional do app para metadados TLV.
mMetaDataWriteCallback
Função opcional para gravar os metadados TLV.
mReceiverDriveSupported
bool
Verdadeiro se for compatível com o drive receptor.
mSenderDriveSupported
bool
Verdadeiro se for possível fazer isso.
mStartOffset
uint64_t
Deslocamento inicial proposto de dados.
mStartOffsetPresent
bool
Verdadeiro se o campo de deslocamento inicial estiver presente.
mVersion
uint8_t
Versão do protocolo BDX que decidimos.
mWideRange
bool
Verdadeiro se o deslocamento e o comprimento forem 64 bits.

Funções públicas

init(uint8_t aVersion, bool aSenderDrive, bool aReceiverDrive, bool aAsynchMode, uint16_t aMaxBlockSize, uint64_t aStartOffset, uint64_t aLength, ReferencedString & aFileDesignator, ReferencedTLVData *aMetaData)
Inicialize um SendInit "wide"
init(uint8_t aVersion, bool aSenderDrive, bool aReceiverDrive, bool aAsynchMode, uint16_t aMaxBlockSize, uint32_t aStartOffset, uint32_t aLength, ReferencedString & aFileDesignator, ReferencedTLVData *aMetaData)
Inicializar um SendInit "sem largura (compensação de 32 bits, comprimento de 32 bits)
init(uint8_t aVersion, bool aSenderDrive, bool aReceiverDrive, bool aAsynchMode, uint16_t aMaxBlockSize, uint64_t aStartOffset, uint64_t aLength, ReferencedString & aFileDesignator, MetaDataTLVWriteCallback aMetaDataWriteCallback, void *aMetaDataAppState)
Inicialize um SendInit "wide"
init(uint8_t aVersion, bool aSenderDrive, bool aReceiverDrive, bool aAsynchMode, uint16_t aMaxBlockSize, uint32_t aStartOffset, uint32_t aLength, ReferencedString & aFileDesignator, MetaDataTLVWriteCallback aMetaDataWriteCallback, void *aMetaDataAppState)
Inicializar um SendInit "sem largura (compensação de 32 bits, comprimento de 32 bits)
operator==(const SendInit &) const
bool
Comparação de igualdade entre mensagens SendInit.
pack(PacketBuffer *aBuffer)
Empacotar uma mensagem de envio de init em um PackageBuffer.
packedLength(void)
uint16_t
Retorna o tamanho compactado desta mensagem init de envio.

Funções estáticas públicas

parse(PacketBuffer *aBuffer, SendInit & aRequest)
Analisar dados de um PackageBuffer em um formato de mensagem SendInit.

Tipos públicos

CallbackDataTLVWriteCallback

WEAVE_ERROR(* MetaDataTLVWriteCallback)(uint8_t *aBuffer, uint16_t aBufferLength, uint16_t &aNumBytesWritten, void *aAppState)

MetaDataTLVWriteCallback fornece um meio pelo qual um cliente pode fornecer um SendInit com todos os metadados que ele quiser.

O cliente é livre para fornecer o TLV (mais rápido) codificado, mais rápido na codificação (usa menos memória), codificação lenta (uma velocidade mais rápida na inicialização) etc. quando achar adequado.

Em todos os casos, presume-se que os dados produzidos pelo callback sejam constantes para um determinado SendInit, ou seja, que não muda quando é chamado. Isso ocorre porque o callback também é usado para calcular o tamanho de qualquer TLV gravado, que pode ser solicitado a qualquer momento.

Detalhes
Parâmetros
[in] aBuffer
O buffer de destino, em que algum TLV pode ser gravado
[in] aBufferLength
O tamanho (em bytes) do buffer de destino
[in,out] aNumBytesWritten
O número de bytes gravados no buffer de destino
[in] aAppState
Estado do app fornecido pelo usuário
Valores de retorno
WEAVE_ERROR
Qualquer erro encontrado.

Atributos públicos

mAsyncModeSupported

bool mAsynchronousModeSupported

Verdadeiro se for compatível com o modo assíncrono.

mDefiniteLength

bool mDefiniteLength

Verdadeiro se o campo de comprimento estiver presente.

mFileDesignator

ReferencedString mFileDesignator

String que contém informações pré-negociadas.

mComprimento

uint64_t mLength

Comprimento proposto dos dados na transferência, 0 para um valor indefinido.

mMaxBlockSize

uint16_t mMaxBlockSize

É o tamanho máximo do bloco proposto para uso na transferência.

mMetadata

ReferencedTLVData mMetaData

Metadados TLV opcionais.

mMetaDataAppState

void * mMetaDataAppState

Estado opcional do app para metadados TLV.

mMetaDataWriteCallback

MetaDataTLVWriteCallback mMetaDataWriteCallback

Função opcional para gravar os metadados TLV.

mReceiverDriveSupported

bool mReceiverDriveSupported

Verdadeiro se for compatível com o drive receptor.

mSenderDriveSupported

bool mSenderDriveSupported

Verdadeiro se for possível fazer isso.

mStartOffset

uint64_t mStartOffset

Deslocamento inicial proposto de dados.

mStartOffsetPresent

bool mStartOffsetPresent

Verdadeiro se o campo de deslocamento inicial estiver presente.

Versão m

uint8_t mVersion

Versão do protocolo BDX que decidimos.

mWideRange

bool mWideRange

Verdadeiro se o deslocamento e o comprimento forem 64 bits.

Funções públicas

SendInit.

 SendInit(
  void
)

init

WEAVE_ERROR init(
  uint8_t aVersion,
  bool aSenderDrive,
  bool aReceiverDrive,
  bool aAsynchMode,
  uint16_t aMaxBlockSize,
  uint64_t aStartOffset,
  uint64_t aLength,
  ReferencedString & aFileDesignator,
  ReferencedTLVData *aMetaData
)

Inicialize um SendInit "wide"

Detalhes
Parâmetros
[in] aVersion
Versão do BDX que estamos usando
[in] aSenderDrive
Verdadeiro se o remetente estiver dirigindo
[in] aReceiverDrive
Verdadeiro se o receptor estiver dirigindo
[in] aAsynchMode
Verdadeiro se o dispositivo for compatível com o modo assíncrono
[in] aMaxBlockSize
Proposta de tamanho máximo de bloqueio para esta transferência
[in] aStartOffset
Iniciar deslocamento no arquivo em que devemos iniciar
[in] aLength
Comprimento do arquivo a ser transferido: 0 significa que ele tem um comprimento indefinido
[in] aFileDesignator
Uma string que identifica os dados a serem transferidos
[in] aMetaData
(Opcional) Dados adicionais no formato TLV
Retorna
WEAVE_NO_ERROR em caso de sucesso

init

WEAVE_ERROR init(
  uint8_t aVersion,
  bool aSenderDrive,
  bool aReceiverDrive,
  bool aAsynchMode,
  uint16_t aMaxBlockSize,
  uint32_t aStartOffset,
  uint32_t aLength,
  ReferencedString & aFileDesignator,
  ReferencedTLVData *aMetaData
)

Inicializar um SendInit "sem largura (compensação de 32 bits, comprimento de 32 bits)

Detalhes
Parâmetros
[in] aVersion
Versão do BDX que estamos usando
[in] aSenderDrive
Verdadeiro se o remetente estiver dirigindo
[in] aReceiverDrive
Verdadeiro se o receptor estiver dirigindo
[in] aAsynchMode
Verdadeiro se o dispositivo for compatível com o modo assíncrono
[in] aMaxBlockSize
Proposta de tamanho máximo de bloqueio para esta transferência
[in] aStartOffset
Iniciar deslocamento no arquivo em que devemos iniciar
[in] aLength
Comprimento do arquivo a ser transferido: 0 significa que ele tem um comprimento indefinido
[in] aFileDesignator
Uma string que identifica os dados a serem transferidos
[in] aMetaData
(Opcional) Dados adicionais no formato TLV
Retorna
WEAVE_NO_ERROR em caso de sucesso

init

WEAVE_ERROR init(
  uint8_t aVersion,
  bool aSenderDrive,
  bool aReceiverDrive,
  bool aAsynchMode,
  uint16_t aMaxBlockSize,
  uint64_t aStartOffset,
  uint64_t aLength,
  ReferencedString & aFileDesignator,
  MetaDataTLVWriteCallback aMetaDataWriteCallback,
  void *aMetaDataAppState
)

Inicialize um SendInit "wide"

Detalhes
Parâmetros
[in] aVersion
Versão do BDX que estamos usando
[in] aSenderDrive
Verdadeiro se o remetente estiver dirigindo
[in] aReceiverDrive
Verdadeiro se o receptor estiver dirigindo
[in] aAsynchMode
Verdadeiro se o dispositivo for compatível com o modo assíncrono
[in] aMaxBlockSize
Proposta de tamanho máximo de bloqueio para esta transferência
[in] aStartOffset
Iniciar deslocamento no arquivo em que devemos iniciar
[in] aLength
Comprimento do arquivo a ser transferido: 0 significa que ele tem um comprimento indefinido
[in] aFileDesignator
Uma string que identifica os dados a serem transferidos
[in] aMetaDataWriteCallback
(Opcional) Uma função para gravar outros dados no formato TLV
[in] aMetaDataAppState
Um contexto opcional a ser transmitido para o aMetaDataWriteCallback
Retorna
WEAVE_NO_ERROR em caso de sucesso

init

WEAVE_ERROR init(
  uint8_t aVersion,
  bool aSenderDrive,
  bool aReceiverDrive,
  bool aAsynchMode,
  uint16_t aMaxBlockSize,
  uint32_t aStartOffset,
  uint32_t aLength,
  ReferencedString & aFileDesignator,
  MetaDataTLVWriteCallback aMetaDataWriteCallback,
  void *aMetaDataAppState
)

Inicializar um SendInit "sem largura (compensação de 32 bits, comprimento de 32 bits)

Detalhes
Parâmetros
[in] aVersion
Versão do BDX que estamos usando
[in] aSenderDrive
Verdadeiro se o remetente estiver dirigindo
[in] aReceiverDrive
Verdadeiro se o receptor estiver dirigindo
[in] aAsynchMode
Verdadeiro se o dispositivo for compatível com o modo assíncrono
[in] aMaxBlockSize
Proposta de tamanho máximo de bloqueio para esta transferência
[in] aStartOffset
Iniciar deslocamento no arquivo em que devemos iniciar
[in] aLength
Comprimento do arquivo a ser transferido: 0 significa que ele tem um comprimento indefinido
[in] aFileDesignator
Uma string que identifica os dados a serem transferidos
[in] aMetaDataWriteCallback
(Opcional) Uma função para gravar outros dados no formato TLV
[in] aMetaDataAppState
(Opcional) Um contexto a ser retornado para a função de callback
Retorna
WEAVE_NO_ERROR em caso de sucesso

operador==

bool operator==(
  const SendInit &
) const 

Comparação de igualdade entre mensagens SendInit.

Detalhes
Parâmetros
[in] another
Outra mensagem SendInit para comparar com esta:
Retorna
verdadeiro se tiverem todos os mesmos campos.

pacote

WEAVE_ERROR pack(
  PacketBuffer *aBuffer
)

Empacotar uma mensagem de envio de init em um PackageBuffer.

Detalhes
Parâmetros
[out] aBuffer
Um PackageBuffer para empacotar a mensagem SendInit
Valores de retorno
WEAVE_NO_ERROR
Se funcionar
WEAVE_ERROR_BUFFER_TOO_SMALL
Se o buffer for muito pequeno

LengthLength

uint16_t packedLength(
  void
)

Retorna o tamanho compactado desta mensagem init de envio.

Detalhes
Retorna
tamanho da mensagem quando ela está cheia;

Funções estáticas públicas

parse

WEAVE_ERROR parse(
  PacketBuffer *aBuffer,
  SendInit & aRequest
)

Analisar dados de um PackageBuffer em um formato de mensagem SendInit.

Detalhes
Parâmetros
[in] aBuffer
Ponteiro para um PackageBuffer que tem os dados que queremos analisar
[out] aRequest
Ponteiro para um objeto SendInit em que devemos armazenar os resultados
Valores de retorno
WEAVE_NO_ERROR
Se funcionar
WEAVE_ERROR_BUFFER_TOO_SMALL
Se o buffer for muito pequeno