Apps     Components     Interfaces     All Files     Source Tree     source: tos.interfaces.StdControl.nc

Interface: StdControl

The TinyOS standard control interface. All components that require initialization or can be powered down should provide this interface. start() and stop() are synonymous with powering on and off, when appropriate. On boot, the init() of all wired components must be called. init() may be called multiple times, and in subcomponents before some of their supercomponents (e.g. if they are the subcomponent of multiple components). After init() has been called, start() and stop() may be called multiple times, in any order. The call sequence is therefore:

init* (start|stop)*

Components providing this interface:
tos.lib.Attr
tos.lib.Attributes.AttrAccel
tos.lib.Attributes.AttrAccelM
tos.lib.Attributes.AttrGlobal
tos.lib.Attributes.AttrGlobalM
tos.lib.Attributes.AttrMag
tos.lib.Attributes.AttrMagM
tos.lib.Attributes.AttrMic
tos.lib.Attributes.AttrMicM
tos.lib.Attributes.AttrPhoto
tos.lib.Attributes.AttrPhotoM
tos.lib.Attributes.AttrPot
tos.lib.Attributes.AttrPotM
tos.lib.Attributes.AttrTemp
tos.lib.Attributes.AttrTempM
tos.lib.Attributes.AttrVoltage
tos.lib.Attributes.AttrVoltageM
tos.lib.Command
tos.lib.Commands.CommandAttr
tos.lib.Commands.CommandAttrM
tos.lib.Commands.CommandLeds
tos.lib.Commands.CommandLedsM
tos.lib.Commands.CommandPot
tos.lib.Commands.CommandPotM
tos.lib.Commands.CommandReset
tos.lib.Commands.CommandResetM
tos.lib.Commands.CommandSounder
tos.lib.Commands.CommandSounderM
tos.lib.TinyAlloc
tos.lib.TinyDB.DBBufferC
tos.lib.TinyDB.NetworkC
tos.lib.TinyDB.TinyDBAttr
tos.lib.TinyDB.TinyDBCommand
tos.lib.TinyDB.TupleRouter
tos.lib.TinyDB.TupleRouterM
tos.platform.mica.I2CC
tos.platform.mica.I2CM
tos.platform.mica.MicaHighSpeedRadioM
tos.platform.mica.RadioCRCPacket
tos.platform.mica.SlavePinC
tos.platform.mica.SlavePinM
tos.sensorboards.micasb.Accel
tos.sensorboards.micasb.AccelM
tos.sensorboards.micasb.I2CPotC
tos.sensorboards.micasb.I2CPotM
tos.sensorboards.micasb.Mag
tos.sensorboards.micasb.MagM
tos.sensorboards.micasb.MicC
tos.sensorboards.micasb.MicM
tos.sensorboards.micasb.Photo
tos.sensorboards.micasb.PhotoTemp
tos.sensorboards.micasb.PhotoTempM
tos.sensorboards.micasb.Sounder
tos.sensorboards.micasb.SounderM
tos.sensorboards.micasb.Temp
tos.system.AMStandard
tos.system.GenericComm
tos.system.NoCRCPacket
tos.system.TimerC
tos.system.TimerM
tos.system.UART
tos.system.UARTM
tos.system.UARTNoCRCPacket
tos.system.Voltage
tos.system.VoltageM

Components requiring this interface:
tos.lib.Attributes.AttrAccelM
tos.lib.Attributes.AttrMagM
tos.lib.Attributes.AttrMicM
tos.lib.Attributes.AttrPhotoM
tos.lib.Attributes.AttrTempM
tos.lib.Attributes.AttrVoltageM
tos.lib.Commands.CommandSounderM
tos.lib.TinyDB.TupleRouterM
tos.sensorboards.micasb.I2CPotM
tos.sensorboards.micasb.MagM
tos.sensorboards.micasb.MicM
tos.system.AMStandard
tos.system.Main
tos.system.NoCRCPacket
tos.system.RealMain

Commands

Commands - Details

init

result_t init(void)

Initialize the component and its subcomponents.
Returns: Whether initialization was successful.

start

result_t start(void)

Start the component and its subcomponents.
Returns: Whether starting was successful.

stop

result_t stop(void)

Stop the component and pertinent subcomponents (not all subcomponents may be turned off due to wakeup timers, etc.).
Returns: Whether stopping was successful.