Real-Time Java AOCS Framework v1.0 API Specification

RtjAocsFramework.TelemetryManagement
Class TelemetryManager

java.lang.Object
  |
  +--RtjAocsFramework.BasicObjects.RootObject
        |
        +--RtjAocsFramework.BasicObjects.AocsObject
              |
              +--RtjAocsFramework.TelemetryManagement.TelemetryManager
All Implemented Interfaces:
ActiveObject, Configurable, Resettable, Telemeterable

public class TelemetryManager
extends AocsObject
implements ActiveObject

This class encapsulates a telemetry manager. The telemetry manager is an active component whose responsibility is the management of the objects that must be written to the telemetry stream. The telemetry manager maintains a list of objects that have been marked for inclusion in telemetry. When it is activated, it goes through the list and calls the writeToTelemetry method of each object in the list. Additionally, the telemetry manager performs some housekeeping operations of which the most important is to ensure that the size of the telemetry image is compatible with the capacity of the telemetry stream.The telemetry manager obtains the telemetry list to be used in the next frame from a telemetry mode manager.

Copyright: see the Copyright Notice.

Version:
1.0
Author:
Alessandro Pasetti (University of Konstanz)
See Also:
ConsistencyCheckable, MonitoringCheck, ChangeEvent, The Telemetry Management Framelet Document.

Field Summary
 
Fields inherited from interface RtjAocsFramework.TelemetryManagement.Telemeterable
DEBUG_TM, LONG_TM, NORMAL_TM, NTMFORMATS, SHORT_TM
 
Constructor Summary
TelemetryManager()
           
 
Method Summary
 RecoveryAction getRecoveryAction()
          Return the recovery action associated to the "too much telemetry data" failuure.
 int getTelemetryImageLength()
          Return the length (in bits) of the telemetry image of the object.
 TelemetryModeManager getTelemetryModeManager()
           
 TelemetryStream getTelemetryStream()
           
 boolean initialize()
          Initialize an active object before it is scheduled.
 boolean isConfigured()
          Return false if some configuration data are missing.
 void resetConfiguration()
          Unload the mode manager, the telemetry stream and the recovery action associated to the "too much telemetry data" error.
 void runOneCycle(int deadline)
          Perform all actions associated to the current cycle.
 void setRecoveryAction(RecoveryAction r)
          Load the recovery action associated to the "too much telemetry data" failuure.
 void setTelemetryModeManager(TelemetryModeManager tmm)
           
 void setTelemetryStream(TelemetryStream s)
           
 boolean terminate()
          Perfrom any shutdown actions before an active is de-scheduled.
 void writeToTelemetry(TelemetryStream tmStream)
          Direct the object to write its own state to the telemetry stream.
 
Methods inherited from class RtjAocsFramework.BasicObjects.AocsObject
addConfigurationListener, addFailureListener, finalize, getAocsClock, getConfigurationListenerList, getCycle, getDestructionRecoveryAction, getFailureListenerList, getSystemManager, getTelemetryFormat, getTime, removeConfigurationListener, removeFailureListener, reportConfigurationEvent, reportFailure, reset, resetStaticConfiguration, setAocsClock, setDestructionRecoveryAction, setMaxNumberOfConfigurationListeners, setMaxNumberOfFailureListeners, setSystemManager, setTelemetryFormat
 
Methods inherited from class RtjAocsFramework.BasicObjects.RootObject
getClassId, getInstanceId, setClassId
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TelemetryManager

public TelemetryManager()
Method Detail

runOneCycle

public void runOneCycle(int deadline)
Description copied from interface: ActiveObject
Perform all actions associated to the current cycle.

Specified by:
runOneCycle in interface ActiveObject
Parameters:
deadline - deadline by which the object must have returned. This parameter allows implementation of cooperative scheduling.

resetConfiguration

public void resetConfiguration()
Unload the mode manager, the telemetry stream and the recovery action associated to the "too much telemetry data" error.

Specified by:
resetConfiguration in interface Configurable
Overrides:
resetConfiguration in class AocsObject

isConfigured

public boolean isConfigured()
Description copied from interface: Configurable
Return false if some configuration data are missing.

Typically, a false value indicates that a plug-in component is missing or that the object has not been initialized. This is a negative check only: a return value of true cannot guarantee that the object is correctly configured.

Calls to resetConfiguration on an object A are normally not propagated objects of type AocsObject that are contained or otherwise aggregated to A. The rationale for this policy is that all objects of type AocsObject implement interface configurable and therefore their configuration status should be checked externally (probably through the configuration check service of the system manager).

Specified by:
isConfigured in interface Configurable
Overrides:
isConfigured in class AocsObject

writeToTelemetry

public void writeToTelemetry(TelemetryStream tmStream)
Description copied from interface: Telemeterable
Direct the object to write its own state to the telemetry stream.

Specified by:
writeToTelemetry in interface Telemeterable
Overrides:
writeToTelemetry in class AocsObject

getTelemetryImageLength

public int getTelemetryImageLength()
Description copied from interface: Telemeterable
Return the length (in bits) of the telemetry image of the object. This method is useful to verify that the quantity of data generated by a given object is compatible with the capacity of the telemetry channel.

Specified by:
getTelemetryImageLength in interface Telemeterable
Overrides:
getTelemetryImageLength in class AocsObject

setTelemetryModeManager

public void setTelemetryModeManager(TelemetryModeManager tmm)

getTelemetryModeManager

public TelemetryModeManager getTelemetryModeManager()

getTelemetryStream

public TelemetryStream getTelemetryStream()

setTelemetryStream

public void setTelemetryStream(TelemetryStream s)

setRecoveryAction

public void setRecoveryAction(RecoveryAction r)
Load the recovery action associated to the "too much telemetry data" failuure. This failure is declared by the telemetry manager when it finds that the quantity of data to be sent to the telemetry stream in a given activation cycle exceeds the capacity of the telemetry stream channel.


getRecoveryAction

public RecoveryAction getRecoveryAction()
Return the recovery action associated to the "too much telemetry data" failuure. This failure is declared by the telemetry manager when it finds that the quantity of data to be sent to the telemetry stream in a given activation cycle exceeds the capacity of the telemetry stream channel.


initialize

public boolean initialize()
Description copied from interface: ActiveObject
Initialize an active object before it is scheduled.

Specified by:
initialize in interface ActiveObject
Returns:
true if initialization was successful.

terminate

public boolean terminate()
Description copied from interface: ActiveObject
Perfrom any shutdown actions before an active is de-scheduled.

Specified by:
terminate in interface ActiveObject
Returns:
true if shutdown was successful.

Real-Time Java AOCS Framework v1.0 API Specification

Real-Time Java AOCS Framework project home page

Automatic Control Laboratory, ETH Zuerich
Physikstrasse 3
CH-8092 Zuerich, Switzerland