agentland.device.display
Class ProjectorAgent

java.lang.Object
  |
  +--java.rmi.server.RemoteObject
        |
        +--java.rmi.server.RemoteServer
              |
              +--java.rmi.server.UnicastRemoteObject
                    |
                    +--metaglue.AgentAgent
                          |
                          +--agentland.util.GoodAgent
                                |
                                +--agentland.resource.ManagedAgent
                                      |
                                      +--agentland.device.DeviceAgent
                                            |
                                            +--agentland.device.display.DisplayDeviceAgent
                                                  |
                                                  +--agentland.device.display.ProjectorAgent
All Implemented Interfaces:
Agent, Connectable, Device, DisplayDevice, Good, Managed, MetagluePrimitives, Projector, Remote, Serializable, Spy

public class ProjectorAgent
extends DisplayDeviceAgent
implements Projector

Projector agent for dealing wih contention for the Projector ports The Intelligent Room/HAL Project MIT Artificial Intelligence Laboratory Cambridge, MA The designation for this agent must be the full path-name for the serial port which to go through. It is automatically tied to the host specified in the "host" attribute.

See Also:
Serialized Form

Inner classes inherited from class metaglue.AgentAgent
AgentAgent.Attribute
 
Field Summary
protected  UniversalProjector projector
           
 
Fields inherited from class agentland.device.DeviceAgent
defaultState, fName, names, states
 
Fields inherited from class agentland.resource.ManagedAgent
rm, society
 
Fields inherited from class agentland.util.GoodAgent
alert, notifier
 
Fields inherited from class java.rmi.server.RemoteObject
ref
 
Fields inherited from interface metaglue.Agent
ALIVE, DIED, NO_METAGLUE, NOT_RUNNING, STARTING
 
Constructor Summary
ProjectorAgent()
           
 
Method Summary
 boolean connect(String in, String out)
           
protected  String[] getDefaultNames()
          Override this method to set the default names for your device; this method is only called if we cannot defrost names set previously
 boolean inputRGB1()
           
 boolean inputRGB2()
           
 boolean inputVideo()
           
protected  void loadProjector(String serial_port)
           
protected  void setState()
           
 boolean switchTo(String channel)
           
 boolean turnOff()
          Sends an "OFF" command to the projector
 boolean turnOn()
          Sends an "ON" command to the projector
 
Methods inherited from class agentland.device.DeviceAgent
addName, createStateChangeNotification, ensureState, getDefaultStateName, getName, getNames, getState, getState, getStateNames, hasName, quietException, resetAllStates, resetName, resetState, resetState, setDefaultStateName, setName, setState, throwException, updateState, updateState, updateState, updateState, updateState, updateState, updateState, updateState
 
Methods inherited from class agentland.resource.ManagedAgent
connect, getAlert, getNeed, isAvailable, isAvailable, reliesOn, reliesOn, replace, replace, request, request, request, requestAgent, requestAgent, resources, resourcesByAgentID, setNeed, tiedTo, yank, yank, yank
 
Methods inherited from class agentland.util.GoodAgent
addSpy, addSpy, alert, alertString, beep, error, getHistory, getHistoryElement, getPersistentMap, log, notify, removeSpy, removeSpy, resetHistory, safeRely, safeRely, safeRely, setNiceLogName, tell
 
Methods inherited from class metaglue.AgentAgent
addMonitor, alive, defrost, defrostAll, defrostBoolean, defrostInt, defrostString, fixAttribute, fixAttribute, freeze, freeze, freeze, freezeAll, freezeVar, getAgentID, getAttribute, getCatalog, getCatalogID, getDesignation, getFrozenVariables, getLogLevel, getMetaglueAgent, getMetaglueAgentID, getOccupation, getProperties, getSociety, log, log, lookupClass, obtainMetaglueAgent, obtainMetaglueAgent, obtainMetaglueAgentByName, reliesOn, reliesOnSynch, removeFrozen, replaceExceptionHandler, setFreezeName, setLogLevel, setLogName, shutdown, startAgent, startAgentOn, startAgentOn, startup, status, tiedTo, tiedTo, tiedTo, tiedTo, tieToDesignation, whereAreYou
 
Methods inherited from class java.rmi.server.UnicastRemoteObject
clone, exportObject, exportObject, exportObject, unexportObject
 
Methods inherited from class java.rmi.server.RemoteServer
getClientHost, getLog, setLog
 
Methods inherited from class java.rmi.server.RemoteObject
equals, getRef, hashCode, toString, toStub
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface agentland.device.Device
addName, getName, getNames, getState, getState, getStateNames, hasName, resetAllStates, resetName, resetState, resetState, setName, setState
 
Methods inherited from interface agentland.resource.Managed
getNeed, replace, replace, resources, yank, yank
 
Methods inherited from interface agentland.util.Good
getHistory, getHistoryElement, resetHistory
 
Methods inherited from interface metaglue.Agent
addMonitor, alive, getAgentID, getMetaglueAgentID, shutdown, startup, whereAreYou
 
Methods inherited from interface agentland.util.Spy
tell
 

Field Detail

projector

protected UniversalProjector projector
Constructor Detail

ProjectorAgent

public ProjectorAgent()
               throws RemoteException
Method Detail

loadProjector

protected void loadProjector(String serial_port)

setState

protected void setState()
                 throws RemoteException

getDefaultNames

protected String[] getDefaultNames()
Description copied from class: DeviceAgent
Override this method to set the default names for your device; this method is only called if we cannot defrost names set previously
Overrides:
getDefaultNames in class DeviceAgent
Following copied from class: agentland.device.DeviceAgent
Returns:
a Vector value

turnOn

public boolean turnOn()
               throws RemoteException
Sends an "ON" command to the projector
Specified by:
turnOn in interface DisplayDevice

turnOff

public boolean turnOff()
                throws RemoteException
Sends an "OFF" command to the projector
Specified by:
turnOff in interface DisplayDevice

inputVideo

public boolean inputVideo()
                   throws RemoteException
Specified by:
inputVideo in interface Projector

inputRGB1

public boolean inputRGB1()
                  throws RemoteException
Specified by:
inputRGB1 in interface Projector

inputRGB2

public boolean inputRGB2()
                  throws RemoteException
Specified by:
inputRGB2 in interface Projector

switchTo

public boolean switchTo(String channel)
                 throws RemoteException
Specified by:
switchTo in interface Projector

connect

public boolean connect(String in,
                       String out)
                throws RemoteException
Specified by:
connect in interface Connectable
Following copied from interface: agentland.resource.connect.Connectable
Returns:
true or false if connect successful.