nl :: 짜다:: 프로필 :: DataManagement_Current :: TraitUpdatableDataSink
요약
계승
다음에서 상속 :nl :: Weave :: Profiles :: DataManagement_Current :: TraitDataSink
nl :: Weave :: Profiles :: DataManagement_Current :: TraitSchemaEngine :: IGetDataDelegate
생성자와 소멸자 | |
---|---|
TraitUpdatableDataSink (const TraitSchemaEngine *aEngine) |
공공 기능 | |
---|---|
ClearUpdated ( SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle) | |
GetData ( PropertyPathHandle aHandle, uint64_t aTagToWrite,nl::Weave::TLV::TLVWriter & aWriter, bool & aIsNull, bool & aIsPresent) __OVERRIDE | virtual WEAVE_ERROR 노드하는의 경로 핸들을 감안할 때 TLV의 작가, 값이 null 또는 존재하지가 있는지 여부를 나타내는 부울, A는 통보 구축 할 특성 소스에서 데이터를 얻을. |
GetSubscriptionClient () __OVERRIDE | virtual SubscriptionClient * |
GetUpdateEncoder () __OVERRIDE | virtual UpdateEncoder * |
IsUpdatableDataSink (void) __OVERRIDE | virtual bool |
Lock ( SubscriptionClient *apSubClient) | void |
ReadData (TraitDataHandle aTraitDataHandle, PropertyPathHandle aHandle, uint64_t aTagToWrite,TLV::TLVWriter & aWriter, PropertyPathHandle & aPropertyPathHandleOfDictItemToStartFrom) | |
SetSubscriptionClient ( SubscriptionClient *apSubClient) __OVERRIDE | virtual WEAVE_ERROR |
SetUpdateEncoder ( UpdateEncoder *apEncoder) __OVERRIDE | virtual WEAVE_ERROR |
SetUpdated ( SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle, bool aIsConditional) | 지정된 PropertyPathHandle에 로컬 수정 사항이 있음을 선언합니다. |
Unlock ( SubscriptionClient *apSubClient) | void |
공공 기능
ClearUpdated
WEAVE_ERROR ClearUpdated( SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle )
GetData
virtual WEAVE_ERROR GetData( PropertyPathHandle aHandle, uint64_t aTagToWrite, nl::Weave::TLV::TLVWriter & aWriter, bool & aIsNull, bool & aIsPresent ) __OVERRIDE
노드하는의 경로 핸들을 감안할 때 TLV의 작가, 값이 null 또는 존재하지가 있는지 여부를 나타내는 부울, A는 통보 구축 할 특성 소스에서 데이터를 얻을.
경로 핸들이 리프 노드가 아닌 경우 TDM은 작성기에 값 쓰기 (예 : 컨테이너 열기, 구조체 무효화 등)를 처리합니다. 리프가 아닌 노드가 null이거나 존재하지 않으면 TDM은 자식에 대해 GetData를 호출하지 않습니다.
이 함수는 nullable, optional, ephemeral 또는 leafs 핸들에 대해서만 호출됩니다. 이러한 옵션이 활성화 된 핸들이있는 특성은 aIsNull 및 aIsPresent를 채우는 적절한 논리를 구현할 것으로 예상됩니다.
세부 | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
매개 변수 |
| ||||||||||
반환 값 |
|
GetSubscriptionClient
virtual SubscriptionClient * GetSubscriptionClient() __OVERRIDE
GetUpdateEncoder
virtual UpdateEncoder * GetUpdateEncoder() __OVERRIDE
IsUpdatableDataSink
virtual bool IsUpdatableDataSink( void ) __OVERRIDE
자물쇠
void Lock( SubscriptionClient *apSubClient )
ReadData
WEAVE_ERROR ReadData( TraitDataHandle aTraitDataHandle, PropertyPathHandle aHandle, uint64_t aTagToWrite, TLV::TLVWriter & aWriter, PropertyPathHandle & aPropertyPathHandleOfDictItemToStartFrom )
SetSubscriptionClient
virtual WEAVE_ERROR SetSubscriptionClient( SubscriptionClient *apSubClient ) __OVERRIDE
SetUpdateEncoder
virtual WEAVE_ERROR SetUpdateEncoder( UpdateEncoder *apEncoder ) __OVERRIDE
SetUpdated
WEAVE_ERROR SetUpdated( SubscriptionClient *apSubClient, PropertyPathHandle aPropertyHandle, bool aIsConditional )
지정된 PropertyPathHandle에 로컬 수정 사항이 있음을 선언합니다.
NotificationEngine는 업데이트 요청이 처리 될 때까지 손잡이와 그 하위를 대체하지 않습니다. 애플리케이션은 업데이트 작업의 결과로이 핸들 또는 상위 항목 중 하나에 대해 kEvent_OnUpdateComplete 콜백을 수신합니다. 수정은 조건부 일 수도 있고 아닐 수도 있습니다. 트레이 트 인스턴스의 로컬 복사본이 게시자 자체 또는 다른 클라이언트에 의해 변경 되었기 때문에 더 이상 게시자와 동기화되지 않는 경우 조건부 데이터 업데이트가 손실됩니다. 조건부 및 무조건적 돌연변이는 동일한 특성 인스턴스에서 동시에 지원되지 않습니다.
세부 | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
매개 변수 |
| ||||||||||||
반환 값 |
|
TraitUpdatableDataSink
TraitUpdatableDataSink( const TraitSchemaEngine *aEngine )
터놓다
void Unlock( SubscriptionClient *apSubClient )