shady.sim.multi
Interface MultiShadySimAPI

All Superinterfaces:
MultiShadyCommonAPI
All Known Implementing Classes:
MultiShadySim

public interface MultiShadySimAPI
extends MultiShadyCommonAPI

MultiShady simulator API.

Copyright (C) 2006 Marsette A. Vona, III

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.

Author:
Marsette (Marty) A. Vona, III

Nested Class Summary
 
Nested classes/interfaces inherited from interface shady.common.multi.MultiShadyCommonAPI
MultiShadyCommonAPI.MemberProcessor
 
Field Summary
static java.lang.String cvsid
          CVS id.
 
Method Summary
 void chargeBatteries(double newBatteryLevel)
          Atomically simulate charging the battery to the same level for all members.
 double getAccel()
          Get the simulation time acceleration factor.
 double getShadyTime()
          Get the acceltime in accelseconds relative to an arbitrary epoch.
 void pause()
          Pause this MultiShadySim.
 void rechargeBatteries()
          Atomically simulate recharging the battery of all members.
 void setAccel(double accel)
          Atomically set the simulation time acceleration factor for all members.
 void setDiscreteMode(boolean discreteMode)
          Atomically set the same discrete mode to all members.
 void shadySleep(double seconds)
          Sleep the current thread for the requested number of accelseconds.
 void unPause()
          Un-pause() this MultiShadySim.
 
Methods inherited from interface shady.common.multi.MultiShadyCommonAPI
addMember, addMember, clearMembers, exec, forEachMember, forMembers, getClock, getMember, getMember, getMember, getMembers, getNumActiveActuators, makeMember, numMembers, removeLastMember, reset, stop
 

Field Detail

cvsid

static final java.lang.String cvsid

CVS id.

See Also:
Constant Field Values
Method Detail

setDiscreteMode

void setDiscreteMode(boolean discreteMode)

Atomically set the same discrete mode to all members.

See ShadySimAPI.setDiscreteMode(boolean).

Parameters:
discreteMode - the discrete mode state

rechargeBatteries

void rechargeBatteries()

Atomically simulate recharging the battery of all members.

See ShadySimAPI.rechargeBattery().


chargeBatteries

void chargeBatteries(double newBatteryLevel)

Atomically simulate charging the battery to the same level for all members.

See ShadySimAPI.chargeBattery(double).

Parameters:
newBatteryLevel - the new battery level, in Joules

setAccel

void setAccel(double accel)

Atomically set the simulation time acceleration factor for all members.

See ShadySimAPI.setAccel(double).

Parameters:
accel - the simulation time acceleration factor

getAccel

double getAccel()

Get the simulation time acceleration factor.

Returns:
the simulation time acceleration factor

getShadyTime

double getShadyTime()

Get the acceltime in accelseconds relative to an arbitrary epoch.

Returns:
the acceltime in accelseconds relative to an arbitrary epoch

shadySleep

void shadySleep(double seconds)
                throws java.lang.InterruptedException

Sleep the current thread for the requested number of accelseconds.

Parameters:
seconds - how long to sleep in accelseconds, non-negative
Throws:
java.lang.InterruptedException

pause

void pause()

Pause this MultiShadySim.

See ShadySimAPI.pause().


unPause

void unPause()

Un-pause() this MultiShadySim.