Component: moteiv.tos.lib.resource.FcfsArbiterC

generic configuration FcfsArbiterC(uint8_t numResources)

Please refer to TEP 108 for more information about this component and its intended use. This arbiter has some resemblence to the FcfsArbiterC from TinyOS 2.x by Kevin Klues.

This component provides the Arbiter, Resource, ResourceCmd, ResourceCmdAsync, and ResourceValidate interfaces. Controller interfaces and uses the ResourceConfigure interface as described in TEP 108. It provides arbitration to a shared resource in an FCFS fashion. An array is used to keep track of which users have put in requests for the resource. Upon the release of the resource by one of these users, the array is checked and the next user (in FCFS order) that has a pending request will ge granted control of the resource. If there are no pending requests, then the resource becomes idle and any user can put in a request and immediately receive access to the Resource.

Parameters:
numResources - The maximum number of resources this arbiter is managing
Author:
Cory Sharp, Moteiv Corporation <info@moteiv.com>

Provides
interface Arbiter
interface Init
interface Resource[uint8_t]
interface ResourceCmd[uint8_t]
interface ResourceCmdAsync[uint8_t]
interface ResourceValidate

Uses
interface ResourceConfigure[uint8_t]

Wiring