Struct fxbox_taxonomy::devices::Node [] [src]

pub struct Node {
    pub tags: Vec<String>,
    pub id: Id<NodeId>,
    pub inputs: Vec<Channel<Get>>,
    pub outputs: Vec<Channel<Set>>,
    // some fields omitted
}

Metadata on a node. A node is a device or collection of devices that may offer services. The FoxBox itself a node offering services such as a clock, communication with the user through her smart devices, etc.

Fields

tags

Tags describing the node.

These tags can be set by the user, adapters or applications. They are used by applications to find nodes and services.

For instance, a user may set tag "entrance" to all nodes placed in the entrance of his house, or a tag "blue" to a node controlling blue lights. An adapter may set tags "plugged" or "battery" to devices that respectively depend on a plugged power source or on a battery.

id

An id unique to this node.

inputs

Channels connected directly to this node.

outputs

Trait Implementations

impl Deserialize for Node

fn deserialize<__D>(deserializer: &mut __D) -> Result<Node, __D::Error> where __D: Deserializer

impl Serialize for Node

fn serialize<__S>(&self, serializer: &mut __S) -> Result<(), __S::Error> where __S: Serializer

Derived Implementations

impl Clone for Node

fn clone(&self) -> Node

1.0.0fn clone_from(&mut self, source: &Self)

impl Debug for Node

fn fmt(&self, __arg_0: &mut Formatter) -> Result