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

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

SendInit 메시지는 발신자가 개시자인 경우 교환을 시작하는 데 사용됩니다.

요약

상속

Direct Known Subclasses: nl::Weave::Profiles::BDX_Development::ReceiveInit

생성자 및 소멸자

SendInit(void)

공개 유형

MetaDataTLVWriteCallback)(uint8_t *aBuffer, uint16_t aBufferLength, uint16_t &aNumBytesWritten, void *aAppState) typedef
MetaDataTLVWriteCallback은 클라이언트가 원하는 메타데이터를 사용하여 SendInit에 제공할 수 있는 수단을 제공합니다.

공개 속성

mAsynchronousModeSupported
bool
비동기 모드를 지원할 수 있는 경우 true입니다.
mDefiniteLength
bool
길이 필드가 있으면 true입니다.
mFileDesignator
사전 협상된 정보를 포함하는 문자열입니다.
mLength
uint64_t
제안된 전송 데이터 길이(무제한의 경우 0)
mMaxBlockSize
uint16_t
전송에 사용할 제안된 최대 블록 크기
mMetaData
선택적 TLV 메타데이터입니다.
mMetaDataAppState
void *
TLV 메타데이터의 앱 상태입니다(선택사항).
mMetaDataWriteCallback
TLV 메타데이터를 작성하는 선택적 함수입니다.
mReceiverDriveSupported
bool
수신기 드라이브를 지원할 수 있는 경우 true입니다.
mSenderDriveSupported
bool
발신자 드라이브를 지원할 수 있는 경우 true입니다.
mStartOffset
uint64_t
제안된 데이터 시작 오프셋입니다.
mStartOffsetPresent
bool
시작 오프셋 필드가 있으면 true입니다.
mVersion
uint8_t
Google에서 결정한 BDX 프로토콜 버전입니다.
mWideRange
bool
오프셋 및 길이가 64비트인 경우 true입니다.

공개 함수

init(uint8_t aVersion, bool aSenderDrive, bool aReceiverDrive, bool aAsynchMode, uint16_t aMaxBlockSize, uint64_t aStartOffset, uint64_t aLength, ReferencedString & aFileDesignator, ReferencedTLVData *aMetaData)
'와이드' SendInit를 초기화합니다.
init(uint8_t aVersion, bool aSenderDrive, bool aReceiverDrive, bool aAsynchMode, uint16_t aMaxBlockSize, uint32_t aStartOffset, uint32_t aLength, ReferencedString & aFileDesignator, ReferencedTLVData *aMetaData)
'비 와이드' SendInit 초기화 (32비트 시작 오프셋, 32비트 길이)
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)
'와이드' SendInit를 초기화합니다.
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)
'비 와이드' SendInit 초기화 (32비트 시작 오프셋, 32비트 길이)
operator==(const SendInit &) const
bool
SendInit 메시지 간 동등 비교
pack(PacketBuffer *aBuffer)
전송 초기화 메시지를 PacketBuffer에 패키징합니다.
packedLength(void)
uint16_t
이 Send init 메시지의 압축된 길이를 반환합니다.

공개 정적 함수

parse(PacketBuffer *aBuffer, SendInit & aRequest)
PacketBuffer에서 SendInit 메시지 형식으로 데이터를 파싱합니다.

공개 유형

MetaDataTLVWriteCallback

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

MetaDataTLVWriteCallback은 클라이언트가 원하는 메타데이터를 사용하여 SendInit에 제공할 수 있는 수단을 제공합니다.

클라이언트는 필요에 따라 사전 인코딩된 TLV를 자유롭게 제공하고 (더 빠름), 즉석 인코딩 (메모리 사용량 감소), 지연 인코딩 (시작 시 약간 더 빠름) 등을 자유롭게 제공할 수 있습니다.

모든 경우에서 콜백에 의해 생성된 데이터는 특정 SendInit에서 상수, 즉 호출 시점에 관계없이 변경되지 않는다고 가정합니다. 이는 언제든지 요청될 수 있는, 이렇게 작성된 TLV의 길이를 계산하는 데 콜백도 사용되기 때문입니다.

세부정보
매개변수
[in] aBuffer
일부 TLV를 쓸 수 있는 대상 버퍼
[in] aBufferLength
대상 버퍼의 길이 (바이트)
[in,out] aNumBytesWritten
대상 버퍼에 기록된 바이트 수입니다.
[in] aAppState
사용자 제공 앱 상태
반환 값
WEAVE_ERROR
오류가 발생했습니다.

공개 속성

mAsynchronousModeSupported

bool mAsynchronousModeSupported

비동기 모드를 지원할 수 있는 경우 true입니다.

mDefiniteLength

bool mDefiniteLength

길이 필드가 있으면 true입니다.

mFileDesignator

ReferencedString mFileDesignator

사전 협상된 정보를 포함하는 문자열입니다.

mLength

uint64_t mLength

제안된 전송 데이터 길이(무제한의 경우 0)

mMaxBlockSize

uint16_t mMaxBlockSize

전송에 사용할 제안된 최대 블록 크기

mMetaData

ReferencedTLVData mMetaData

선택적 TLV 메타데이터입니다.

mMetaDataAppState

void * mMetaDataAppState

TLV 메타데이터의 앱 상태입니다(선택사항).

mMetaDataWriteCallback

MetaDataTLVWriteCallback mMetaDataWriteCallback

TLV 메타데이터를 작성하는 선택적 함수입니다.

mReceiverDriveSupported

bool mReceiverDriveSupported

수신기 드라이브를 지원할 수 있는 경우 true입니다.

mSenderDriveSupported

bool mSenderDriveSupported

발신자 드라이브를 지원할 수 있는 경우 true입니다.

mStartOffset

uint64_t mStartOffset

제안된 데이터 시작 오프셋입니다.

mStartOffsetPresent

bool mStartOffsetPresent

시작 오프셋 필드가 있으면 true입니다.

mVersion

uint8_t mVersion

Google에서 결정한 BDX 프로토콜 버전입니다.

mWideRange

bool mWideRange

오프셋 및 길이가 64비트인 경우 true입니다.

공개 함수

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
)

'와이드' SendInit를 초기화합니다.

세부정보
매개변수
[in] aVersion
사용 중인 BDX 버전
[in] aSenderDrive
발신자가 운전 중인 경우 true입니다.
[in] aReceiverDrive
수신기가 운전 중인 경우 true
[in] aAsynchMode
기기가 비동기 모드를 지원하는 경우 true
[in] aMaxBlockSize
이 이전의 최대 블록 크기 제안
[in] aStartOffset
파일에서 시작해야 하는 시작 오프셋
[in] aLength
전송할 파일의 길이 - 0은 파일 길이가 무제한임을 의미합니다.
[in] aFileDesignator
전송할 데이터를 식별하는 문자열
[in] aMetaData
(선택사항) TLV 형식의 추가 데이터
반환
성공한 경우 WEAVE_NO_ERROR

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
)

'비 와이드' SendInit 초기화 (32비트 시작 오프셋, 32비트 길이)

세부정보
매개변수
[in] aVersion
사용 중인 BDX 버전
[in] aSenderDrive
발신자가 운전 중인 경우 true입니다.
[in] aReceiverDrive
수신기가 운전 중인 경우 true
[in] aAsynchMode
기기가 비동기 모드를 지원하는 경우 true
[in] aMaxBlockSize
이 이전의 최대 블록 크기 제안
[in] aStartOffset
파일에서 시작해야 하는 시작 오프셋
[in] aLength
전송할 파일의 길이 - 0은 파일 길이가 무제한임을 의미합니다.
[in] aFileDesignator
전송할 데이터를 식별하는 문자열
[in] aMetaData
(선택사항) TLV 형식의 추가 데이터
반환
성공한 경우 WEAVE_NO_ERROR

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
)

'와이드' SendInit를 초기화합니다.

세부정보
매개변수
[in] aVersion
사용 중인 BDX 버전
[in] aSenderDrive
발신자가 운전 중인 경우 true입니다.
[in] aReceiverDrive
수신기가 운전 중인 경우 true
[in] aAsynchMode
기기가 비동기 모드를 지원하는 경우 true
[in] aMaxBlockSize
이 이전의 최대 블록 크기 제안
[in] aStartOffset
파일에서 시작해야 하는 시작 오프셋
[in] aLength
전송할 파일의 길이 - 0은 파일 길이가 무제한임을 의미합니다.
[in] aFileDesignator
전송할 데이터를 식별하는 문자열
[in] aMetaDataWriteCallback
(선택사항) 추가 데이터를 TLV 형식으로 작성하는 함수
[in] aMetaDataAppState
aMetaDataWriteCallback에 전달할 선택적 컨텍스트입니다.
반환
성공한 경우 WEAVE_NO_ERROR

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
)

'비 와이드' SendInit 초기화 (32비트 시작 오프셋, 32비트 길이)

세부정보
매개변수
[in] aVersion
사용 중인 BDX 버전
[in] aSenderDrive
발신자가 운전 중인 경우 true입니다.
[in] aReceiverDrive
수신기가 운전 중인 경우 true
[in] aAsynchMode
기기가 비동기 모드를 지원하는 경우 true
[in] aMaxBlockSize
이 이전의 최대 블록 크기 제안
[in] aStartOffset
파일에서 시작해야 하는 시작 오프셋
[in] aLength
전송할 파일의 길이 - 0은 파일 길이가 무제한임을 의미합니다.
[in] aFileDesignator
전송할 데이터를 식별하는 문자열
[in] aMetaDataWriteCallback
(선택사항) 추가 데이터를 TLV 형식으로 작성하는 함수
[in] aMetaDataAppState
(선택사항) 콜백 함수로 다시 전달할 컨텍스트
반환
성공한 경우 WEAVE_NO_ERROR

연산자==

bool operator==(
  const SendInit &
) const 

SendInit 메시지 간 동등 비교

세부정보
매개변수
[in] another
이 메시지를 비교할 또 다른 SendInit 메시지
반환
필드가 모두 같은 경우 true입니다.

WEAVE_ERROR pack(
  PacketBuffer *aBuffer
)

전송 초기화 메시지를 PacketBuffer에 패키징합니다.

세부정보
매개변수
[out] aBuffer
SendInit 메시지를 패키징할 PacketBuffer
반환 값
WEAVE_NO_ERROR
성공한 경우
WEAVE_ERROR_BUFFER_TOO_SMALL
버퍼가 너무 작은 경우

packedLength

uint16_t packedLength(
  void
)

이 Send init 메시지의 압축된 길이를 반환합니다.

세부정보
반환
패킹될 때 메시지 길이

공개 정적 함수

parse

WEAVE_ERROR parse(
  PacketBuffer *aBuffer,
  SendInit & aRequest
)

PacketBuffer에서 SendInit 메시지 형식으로 데이터를 파싱합니다.

세부정보
매개변수
[in] aBuffer
파싱하려는 데이터가 있는 PacketBuffer에 대한 포인터
[out] aRequest
결과를 저장해야 하는 SendInit 객체에 대한 포인터입니다.
반환 값
WEAVE_NO_ERROR
성공한 경우
WEAVE_ERROR_BUFFER_TOO_SMALL
버퍼가 너무 작은 경우