Real-Time Java AOCS Framework v1.0 API Specification

JbedSmmApplication.TelemetryManagement
Class JbedSmmTmSender

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

public class JbedSmmTmSender
extends AocsObject
implements ActiveObject

The application specific component that is responsible for forwarding a TM buffer to the ground station. This component performs operations that are not compatible with RT constraints. It should therefore execute as a non-RT thread. The TM buffer to be forwarded to the ground is acquired from the JbedSmmTelemetry stream component. The hardware channel through which TM buffer data are forwarded to the ground is represented by a PrintWriter component. One TM buffer is sent as a -terminated string where data items are separated by blanck characters. Change Record:

Copyright: see the Copyright Notice.

Version:
2.0
Author:
V. Cechticky/A. Pasetti (ETH-Zurich)

Field Summary
 
Fields inherited from interface RtjAocsFramework.TelemetryManagement.Telemeterable
DEBUG_TM, LONG_TM, NORMAL_TM, NTMFORMATS, SHORT_TM
 
Constructor Summary
JbedSmmTmSender()
          Create an application specific component responsible for sending telemetry data.
 
Method Summary
 boolean initialize()
          Initialize an active object before it is scheduled.
 boolean isConfigured()
          Check that the telemetry stream component is loaded.
 void resetConfiguration()
          Unload the the telemetry stream component.
 void runOneCycle(int deadline)
          Write the TM buffer data to the PrintWriter representing the channel through which TM data are forwarded to the ground station.
 void setConnection(JbedSmmConnectionInstaller connection)
          Sets a component that is resposible for establishment of a connection between the client and server.
 void setTelemetryStream(JbedSmmTelemetryStream tmStream)
          Sets the application specific telemetry stream.
 boolean terminate()
          Perfrom any shutdown actions before an active is de-scheduled.
 
Methods inherited from class RtjAocsFramework.BasicObjects.AocsObject
addConfigurationListener, addFailureListener, finalize, getAocsClock, getConfigurationListenerList, getCycle, getDestructionRecoveryAction, getFailureListenerList, getSystemManager, getTelemetryFormat, getTelemetryImageLength, getTime, removeConfigurationListener, removeFailureListener, reportConfigurationEvent, reportFailure, reset, resetStaticConfiguration, setAocsClock, setDestructionRecoveryAction, setMaxNumberOfConfigurationListeners, setMaxNumberOfFailureListeners, setSystemManager, setTelemetryFormat, writeToTelemetry
 
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

JbedSmmTmSender

public JbedSmmTmSender()
Create an application specific component responsible for sending telemetry data.

Method Detail

isConfigured

public boolean isConfigured()
Check that the telemetry stream component is loaded.

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

resetConfiguration

public void resetConfiguration()
Unload the the telemetry stream component.

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

setTelemetryStream

public void setTelemetryStream(JbedSmmTelemetryStream tmStream)
Sets the application specific telemetry stream.

Parameters:
tmStream - a telemetry stream

setConnection

public void setConnection(JbedSmmConnectionInstaller connection)
Sets a component that is resposible for establishment of a connection between the client and server.

Parameters:
connection - the connection component

runOneCycle

public void runOneCycle(int deadline)
Write the TM buffer data to the PrintWriter representing the channel through which TM data are forwarded to the ground station. The TM Buffer to be thus written is acquired from the telemetry stream component. Since the telemetry stream component and the TmSender component should never operate on the same buffer, the telemetry stream component is given a new TM buffer to replace the one which is being processed by the TmSender component. The data in the TM buffer are sent one at a time and are separated by a blank character. After all data have been sent, a is sent.

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

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