From e2d68d4c17eab35f04c131f9651086b956b97088 Mon Sep 17 00:00:00 2001 From: Bryan Lewandowski Date: Mon, 7 Mar 2016 13:37:51 -0800 Subject: Add general-use-and-purpose comment for Device interface. Change-Id: Id6c24bb037790e1d8fd328225b84e036fe70179e Reviewed-on: https://weave-review.googlesource.com/2860 Reviewed-by: Alex Vakulenko --- include/weave/device.h | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/include/weave/device.h b/include/weave/device.h index b79e6a3..5d455de 100644 --- a/include/weave/device.h +++ b/include/weave/device.h @@ -23,6 +23,25 @@ namespace weave { +// This interface defines interactions with a Weave device. Implemented in +// weave::DeviceManager. The general use of this class is to: +// - Define the traits for the Weave schema the device is +// interested in using the AddTraitDefinitions() and +// AddTraitDefinitionsFromJson() functions. +// - Define the components for the Weave schema the device is +// interested in using the AddComponent() function. +// - Set the initial/default values of "state" portions of the schema using +// the SetStatePropertiesFromJson() and SetStateProperties() functions. +// - Specify callback functions when a command (defined in the Weave schema) +// is received by the device using the AddCommandHandler() function. +// +// A daemon will typically create one instance of a class implementing +// Device and will retain it for the life of the daemon using the Create() +// function. +// +// For detailed examples of the usage of this class, see the examples/daemon +// directory. + // States of Gcd connection. enum class GcdState { kUnconfigured, // Device was not registered. -- cgit v1.2.3