Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

PUSTcManoeuvre Class Reference
[Packet Utilization Standard (PUS)Manoeuvre Management]

#include <PUSTcManoeuvre.h>

Inheritance diagram for PUSTcManoeuvre:

Manoeuvre CC_RootObject DC_TestPUSConfigurableManoeuvre List of all members.

Detailed Description

Base class for classes encapsulating a PUS telecommand manoeuvre.

A PUS telecommand manoeuvre models the manoeuvre-like actions associated to a PUS telecommand. The OBS Framework implements a telecommand as a form of punctual action that is executed in one-shot mode (i.e. its execution terminates in the same cycle in which it begins). The Packet Utilization Standard (PUS) instead allows for actions to be associated to a telecommand that must be executed over an interval of time. This class models this type of actions as a form of manoeuvre. A manoeuvre of this type would normally be launched by a PUS telecommand.

This class adds to its base class the following attributes that describe the telecommand that launches the manoeuvre:

Additionally, this class provides a progress event generation service. This service can be called by concrete subclasses to generate an event marking the advancement of the execution of the PUS telecommand mananoeuvre.

A PUS telecommand manoeuvre is normally loaded into the manoeuvre manager by a PUS telecommand. The PUS telecommand should configured the PUS manoeuvre as follows:<ul> It should set its telecommand identifier attribute It should set its execution start acknowledge flag It should set its progress acknowledge flag It should set its completion acknowledge flag The above configuration actions can be performed in any order.

See also:
PUSTelecommand
Author:
Alessandro Pasetti (P&P Software GmbH)
Version:
1.0

Definition at line 59 of file PUSTcManoeuvre.h.

Public Member Functions

 PUSTcManoeuvre (void)
 Instantiate a PUS telecommand manoeuvre component.

bool isStartAckRequired (void) const
 Return true if acknowledgement of manoeuvre execution start is required.

bool isProgressAckRequired (void) const
 Return true if acknowledgement of manoeuvre execution progress is required.

bool isCompletionAckRequired (void) const
 Return the true if acknowledgement of manoeuvre execution completion is required.

void setStartAckFlag (bool startAckFlag)
 Set the value of the start acknowledge flag.

void setCompletionAckFlag (bool completionAckFlag)
 Set the value of the completion acknowledge flag.

void setProgressAckFlag (bool progressAckFlag)
 Set the value of the progress acknowledge flag.

virtual TD_TelecommandId getTelecommandId (void) const
 Getter method for the identifier of the telecommand that launched this manoeuvre.

virtual void setTelecommandId (TD_TelecommandId tcIdentifier)
 Setter method for the identifier of the telecommand that launched this manoeuvre.


Protected Member Functions

virtual void generateProgressEvent (void)
 This method generates an event of type EVT_MAN_PROGRESS (manoeuvre progress event report).


Constructor & Destructor Documentation

PUSTcManoeuvre::PUSTcManoeuvre void   ) 
 

Instantiate a PUS telecommand manoeuvre component.

The acknoweldge flags are set to false ("no acknowledge is required") and the telecommand identifier is set to an illegal value to signify that the component is not yet configured.

Definition at line 16 of file PUSTcManoeuvre.cpp.


Member Function Documentation

void PUSTcManoeuvre::generateProgressEvent void   )  [protected, virtual]
 

This method generates an event of type EVT_MAN_PROGRESS (manoeuvre progress event report).

Some applications require that telemetry packets be generated to mark the advancement of the execution of the actions associated to a PUS telecommand. This method is intended as a facility to be called by concrete subclasses at points where generation of an execution progress report is required. It would typically be called from inside the implementation of method doInternalContinue. A pseudo-code implementation for this method is as follows:<PRE> createEventReport(this, EVT_MAN_PROGRESS);

See also:
isProgressAckRequired

Definition at line 23 of file PUSTcManoeuvre.cpp.

TD_TelecommandId PUSTcManoeuvre::getTelecommandId void   )  const [virtual]
 

Getter method for the identifier of the telecommand that launched this manoeuvre.

See also:
setTelecommandId
Returns:
the telecommand identifier

Definition at line 51 of file PUSTcManoeuvre.cpp.

bool PUSTcManoeuvre::isCompletionAckRequired void   )  const
 

Return the true if acknowledgement of manoeuvre execution completion is required.

This flag should normally have the same value as the completion acknowledgement flag of the telecommand that triggered the execution of this manoeuvre.

See also:
setCompletionAckFlag
Returns:
the value of the completion acknowledge flag

Definition at line 35 of file PUSTcManoeuvre.cpp.

bool PUSTcManoeuvre::isProgressAckRequired void   )  const
 

Return true if acknowledgement of manoeuvre execution progress is required.

This flag should normally have the same value as the progress acknowledgement flag of the telecommand that triggered the execution of this manoeuvre.

See also:
setProgressAckFlag
Returns:
the value of the progress acknowledge flag

Definition at line 31 of file PUSTcManoeuvre.cpp.

bool PUSTcManoeuvre::isStartAckRequired void   )  const
 

Return true if acknowledgement of manoeuvre execution start is required.

This flag should normally have the same value as the execution start acknowledgement flag of the telecommand that triggered the execution of this manoeuvre.

See also:
setStartAckFlag
Returns:
the value of the execution start acknowledge flag

Definition at line 27 of file PUSTcManoeuvre.cpp.

void PUSTcManoeuvre::setCompletionAckFlag bool  completionAckFlag  ) 
 

Set the value of the completion acknowledge flag.

See also:
isCompletionAckRequired
Parameters:
completionAckFlag the value of the completion acknowledge flag

Definition at line 43 of file PUSTcManoeuvre.cpp.

void PUSTcManoeuvre::setProgressAckFlag bool  progressAckFlag  ) 
 

Set the value of the progress acknowledge flag.

See also:
isCompletionAckRequired
Parameters:
progressAckFlag the value of the progress acknowledge flag

Definition at line 47 of file PUSTcManoeuvre.cpp.

void PUSTcManoeuvre::setStartAckFlag bool  startAckFlag  ) 
 

Set the value of the start acknowledge flag.

See also:
isStartAckRequired
Parameters:
startAckFlag the value of the execution start acknowledge flag

Definition at line 39 of file PUSTcManoeuvre.cpp.

void PUSTcManoeuvre::setTelecommandId TD_TelecommandId  tcIdentifier  )  [virtual]
 

Setter method for the identifier of the telecommand that launched this manoeuvre.

See also:
getTelecommandId
Parameters:
tcIdentifier the telecommand identifier

Definition at line 55 of file PUSTcManoeuvre.cpp.


The documentation for this class was generated from the following files:
Copyright 2003 P&P Software GmbH - All Rights Reserved