nl:: Weave:: Profiles:: BDX_Development:: BDXTransfer
#include <src/lib/profiles/bulk-data-transfer/Development/BDXTransferState.h>
Ta struktura zawiera dane reprezentujące aktywny transfer BDX.
Podsumowanie
Te obiekty są używane przez BdxProtocol do utrzymania stanu protokołu. Zarządza nimi BdxServer, który obsługuje tworzenie i inicjowanie nowych transferów, w tym zarządzanie połączeniami i kontekstami Exchange.
Atrybuty publiczne |
|
---|---|
mAmInitiator
|
bool
|
mAmSender
|
bool
|
mAppState
|
void *
|
mBlockCounter
|
uint32_t
Następny numer bloku, który powinien otrzymać podczas wysyłania (BlockQuery lub BlockACK) po oficjalnym rozpoczęciu transferu.
|
mBytesSent
|
uint64_t
|
mExchangeContext
|
|
mFileDesignator
|
pliki/blokady danych powiązane DO ZROBIENIA: usunąć to? A może powinniśmy podpisać umowę na temat tego, jak ten ciąg znaków może wyglądać i jak będzie używany? Chodzi konkretnie o to, czy jest on obsługiwany przez bufor pakietów. Jeśli tak, prawdopodobnie nie powinien on pozostawać w pobliżu przez cały czas, ponieważ zajmuje to dużo miejsca.
|
mFirstQuery
|
bool
|
mHandlers
|
|
mIsAccepted
|
bool
|
mIsCompletedSuccessfully
|
bool
|
mIsInitiated
|
bool
|
mIsWideRange
|
bool
|
mLength
|
uint64_t
|
mMaxBlockSize
|
uint16_t
|
mNext)(BDXTransfer &)
|
|
mStartOffset
|
uint64_t
|
mTransferMode
|
uint8_t
|
mVersion
|
uint8_t
|
Funkcje publiczne |
|
---|---|
DispatchErrorHandler(WEAVE_ERROR anErrorCode)
|
void
Jeśli moduł obsługi błędów został skonfigurowany, wywołaj go.
|
DispatchGetBlockHandler(uint64_t *aLength, uint8_t **aDataBlock, bool *aLastBlock)
|
void
Jeśli moduł obsługi get block jest ustawiony, wywołaj go.
|
DispatchPutBlockHandler(uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock)
|
void
Jeśli moduł obsługi put block został ustawiony, wywołaj go.
|
DispatchReceiveAccept(ReceiveAccept *aReceiveAcceptMsg)
|
Dyspozytorzy po prostu sprawdzają, czy moduł obsługi został skonfigurowany, a potem go wywołują, jeśli tak jest.
|
DispatchRejectHandler(StatusReport *aReport)
|
void
Jeśli moduł obsługi odrzucenia został ustawiony, wywołaj go.
|
DispatchSendAccept(SendAccept *aSendAcceptMsg)
|
Jeśli moduł obsługi wysyłania akceptacji wiadomości został ustawiony, wywołaj go.
|
DispatchXferDoneHandler(void)
|
void
Jeśli moduł obsługi ukończenia przenoszenia został ustawiony, wywołaj go.
|
DispatchXferErrorHandler(StatusReport *aXferError)
|
void
Jeśli moduł obsługi błędów transferu został ustawiony, wywołaj go.
|
GetDefaultFlags(bool aExpectResponse)
|
uint16_t
Ta funkcja zwraca domyślne flagi, które mają być wysyłane wraz z wiadomością.
|
IsAsync(void)
|
bool
Returns true if this transfer is asynchronous, false otherwise. |
IsDriver(void)
|
bool
Returns true if this entity (node) is the driver for this transfer, false otherwise. |
Reset(void)
|
void
Sets all pointers to NULL, resets counters, etc. |
SetHandlers(BDXHandlers aHandlers)
|
void
Ta funkcja ustawia moduły obsługi tego obiektu BDXTransfer.
|
Shutdown(void)
|
void
Shuts down the current transfer, including closing any open ExchangeContext. |
Atrybuty publiczne
mAmInitiator
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mAmInitiator
mAmSender
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mAmSender
mAppState
void * nl::Weave::Profiles::BDX_Development::BDXTransfer::mAppState
mBlockCounter
uint32_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mBlockCounter
Następny numer bloku, który powinien otrzymać podczas wysyłania (BlockQuery lub BlockACK) po oficjalnym rozpoczęciu transferu.
Jest to następny BlockSend lub ostatni wysłany przez nas BlockQuery (po oficjalnym rozpoczęciu przenoszenia i pierwszym wysłanym zapytaniu).
mBytesSent
uint64_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mBytesSent
mExchangeContext
ExchangeContext * nl::Weave::Profiles::BDX_Development::BDXTransfer::mExchangeContext
mFileDesignator
ReferencedString nl::Weave::Profiles::BDX_Development::BDXTransfer::mFileDesignator
pliki/blokady danych powiązane DO ZROBIENIA: usunąć to? A może powinniśmy podpisać umowę na temat tego, jak ten ciąg znaków może wyglądać i jak będzie używany? Chodzi konkretnie o to, czy jest on obsługiwany przez bufor pakietów. Jeśli tak, prawdopodobnie nie powinien on pozostawać w pobliżu przez cały czas, ponieważ zajmuje to dużo miejsca.
mFirstQuery
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mFirstQuery
mHandlers
BDXHandlers nl::Weave::Profiles::BDX_Development::BDXTransfer::mHandlers
mIsAccepted
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsAccepted
mIsCompletedSuccessfully
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsCompletedSuccessfully
mIsInitiated
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsInitiated
mIsWideRange
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::mIsWideRange
mLength
uint64_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mLength
mMaxBlockSize
uint16_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mMaxBlockSize
mNext
WEAVE_ERROR(* nl::Weave::Profiles::BDX_Development::BDXTransfer::mNext)(BDXTransfer &)
mStartOffset
uint64_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mStartOffset
mTransferMode
uint8_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mTransferMode
mVersion
uint8_t nl::Weave::Profiles::BDX_Development::BDXTransfer::mVersion
Funkcje publiczne
DispatchErrorHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchErrorHandler( WEAVE_ERROR anErrorCode )
Jeśli moduł obsługi błędów został skonfigurowany, wywołaj go.
Jeśli zasada nie jest skonfigurowana, wyłącz też przenoszenie jako działanie domyślne.
Szczegóły | |||
---|---|---|---|
Parametry |
|
DispatchGetBlockHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchGetBlockHandler( uint64_t *aLength, uint8_t **aDataBlock, bool *aLastBlock )
Jeśli moduł obsługi get block jest ustawiony, wywołaj go.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
DispatchPutBlockHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchPutBlockHandler( uint64_t aLength, uint8_t *aDataBlock, bool aLastBlock )
Jeśli moduł obsługi put block został ustawiony, wywołaj go.
Szczegóły | |||||||
---|---|---|---|---|---|---|---|
Parametry |
|
DispatchReceiveAccept
WEAVE_ERROR nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchReceiveAccept( ReceiveAccept *aReceiveAcceptMsg )
Dyspozytorzy po prostu sprawdzają, czy moduł obsługi został skonfigurowany, a potem go wywołują, jeśli tak jest.
Jeśli moduł obsługi odbierania akceptacji został ustawiony, wywołaj go.
Używaj ich jako publicznego interfejsu do wywoływania wywołań zwrotnych. Aplikacje zewnętrzne nie powinny mieć do niego bezpośredniego dostępu. W przyszłości może się zdarzyć, że w przyszłości BDXTransfer będzie wykorzystywał obiekt delegata, a nie osobne wskaźniki dla każdego z wywołań zwrotnych.
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwroty |
wartość błędu
|
DispatchRejectHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchRejectHandler( StatusReport *aReport )
Jeśli moduł obsługi odrzucenia został ustawiony, wywołaj go.
Jeśli zasada nie jest skonfigurowana, wyłącz też przenoszenie jako działanie domyślne.
Szczegóły | |||
---|---|---|---|
Parametry |
|
DispatchSendAccept
WEAVE_ERROR nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchSendAccept( SendAccept *aSendAcceptMsg )
Jeśli moduł obsługi wysyłania akceptacji wiadomości został ustawiony, wywołaj go.
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwroty |
wartość błędu
|
DispatchXferDoneHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchXferDoneHandler( void )
Jeśli moduł obsługi ukończenia przenoszenia został ustawiony, wywołaj go.
Jeśli zasada nie jest skonfigurowana, wyłącz też przenoszenie jako działanie domyślne.
DispatchXferErrorHandler
void nl::Weave::Profiles::BDX_Development::BDXTransfer::DispatchXferErrorHandler( StatusReport *aXferError )
Jeśli moduł obsługi błędów transferu został ustawiony, wywołaj go.
Jeśli zasada nie jest skonfigurowana, wyłącz też przenoszenie jako działanie domyślne.
Szczegóły | |||
---|---|---|---|
Parametry |
|
GetDefaultFlags
uint16_t nl::Weave::Profiles::BDX_Development::BDXTransfer::GetDefaultFlags( bool aExpectResponse )
Ta funkcja zwraca domyślne flagi, które mają być wysyłane wraz z wiadomością.
Szczegóły | |||
---|---|---|---|
Parametry |
|
||
Zwroty |
Flagi do wysłania
|
IsAsync
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::IsAsync( void )
Returns true if this transfer is asynchronous, false otherwise.
Szczegóły | |
---|---|
Zwroty |
prawda, jeśli przesyłanie jest asynchroniczne.
|
IsDriver
bool nl::Weave::Profiles::BDX_Development::BDXTransfer::IsDriver( void )
Returns true if this entity (node) is the driver for this transfer, false otherwise.
Szczegóły | |
---|---|
Zwroty |
Prawda, że ten podmiot jest napędzającym ten transfer
|
Resetuj
void nl::Weave::Profiles::BDX_Development::BDXTransfer::Reset( void )
Sets all pointers to NULL, resets counters, etc.
Wywoływane po wyłączeniu.
SetHandlers
void nl::Weave::Profiles::BDX_Development::BDXTransfer::SetHandlers( BDXHandlers aHandlers )
Ta funkcja ustawia moduły obsługi tego obiektu BDXTransfer.
Zawsze używaj tej metody, zamiast próbować ustawiać je ręcznie, ponieważ podstawowa implementacja sposobu przechowywania wskaźników funkcji modułu obsługi nie jest częścią publicznego interfejsu API.
Szczegóły | |||
---|---|---|---|
Parametry |
|
Wyłączono
void nl::Weave::Profiles::BDX_Development::BDXTransfer::Shutdown( void )
Shuts down the current transfer, including closing any open ExchangeContext.
Skorzystaj z tej okazji, aby zwolnić wszystkie zasoby powiązane z tym transferem i logiką aplikacji.