Interface Signal

All Superinterfaces:
Browsable, Extensible, Identifiable, Operable, OsidObject, OsidRule

public interface Signal extends OsidRule

A Signal represents a traffic signal in a Map . The genus type indicates the type of signal. A signal has one or more States that are used to instruct traffic.

  • Method Details

    • getPathId

      Id getPathId()
      Gets the path Id .
      Returns:
      the Id of the path
      Compliance:
      mandatory - This method must be implemented.
    • getPath

      Path getPath() throws OperationFailedException
      Gets the path.
      Returns:
      the path
      Throws:
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getCoordinate

      Coordinate getCoordinate()
      Gets the coordinate of the signal on the path.
      Returns:
      the coordinate
      Compliance:
      mandatory - This method must be implemented.
    • getStateIds

      IdList getStateIds()
      Gets the valid state Ids of this signal.
      Returns:
      the Ids of the states
      Compliance:
      mandatory - This method must be implemented.
    • getStates

      Gets the states of this signal.
      Returns:
      the states
      Throws:
      OperationFailedException - unable to complete request
      Compliance:
      mandatory - This method must be implemented.
    • getSignalRecord

      SignalRecord getSignalRecord(Type signalRecordType) throws OperationFailedException
      Gets the signal record corresponding to the given Signal record Type .This method is used to retrieve an object implementing the requested record. The signalRecordType may be the Type returned in getRecordTypes() or any of its parents in a Type hierarchy where hasRecordType(signalRecordType) is true .
      Parameters:
      signalRecordType - the type of signal record to retrieve
      Returns:
      the signal record
      Throws:
      NullArgumentException - signalRecordType is null
      OperationFailedException - unable to complete request
      UnsupportedException - hasRecordType(signalRecordType) is false
      Compliance:
      mandatory - This method must be implemented.