Package org.xtce.toolkit
Class XTCETelecommandContentModel
- java.lang.Object
-
- org.xtce.toolkit.XTCEContainerContentModelBase
-
- org.xtce.toolkit.XTCETelecommandContentModel
-
public class XTCETelecommandContentModel extends XTCEContainerContentModelBase
The telecommand content model class encapsulates the pre-processing of an XTCE MetaCommand/BlockMetaCommand into a series of rows suitable for a simple iterator.- Author:
- David Overeem
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.xtce.toolkit.XTCEContainerContentModelBase
XTCEContainerContentModelBase.RunningStartBit
-
-
Field Summary
-
Fields inherited from class org.xtce.toolkit.XTCEContainerContentModelBase
containerDescription_, containerName_, contentList_, contentValues_, exhaustedBinaryBitSupply_, showAllConditions_, spaceSystems_, totalContainerSize_, warnings_
-
-
Constructor Summary
Constructors Constructor Description XTCETelecommandContentModel(XTCETelecommand tcObject, List<XTCESpaceSystem> spaceSystems, BitSet binaryData)Constructor This constructor creates the telecommand content model object with TC argument values evaluated from the binary provided in a BitSet.XTCETelecommandContentModel(XTCETelecommand tcObject, List<XTCESpaceSystem> spaceSystems, List<XTCEContainerEntryValue> userValues, boolean showAllConditions)Constructor This constructor creates the telecommand content model object with some optional user values provided in a list.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description XTCETCContainergetContainerReference()Accessor to get the reference to the XTCETCContainer object that this model represents.XTCETelecommandgetTelecommandReference()Accessor to get the reference to the XTCETelecommand object that this model represents.longprocessTelecommand()This method processes the contents of the entire telecommand into a List of XTCEContainerContentEntry objects.-
Methods inherited from class org.xtce.toolkit.XTCEContainerContentModelBase
addArrayEntryDescription, addIncludeCondition, addIncludeConditions, addRepeatEntryDescription, addStartBit, applyBinaryValue, applyRestriction, applyRestrictions, applyUserValue, checkForOverlaps, dynamicCountFromUserValue, encodeContainer, evaluateContainerReferenceLocation, evaluateIncludeConditions, extractRawValue, findContainer, findParameter, findTelecommand, getBytesRequired, getContentList, getDescription, getName, getTotalSize, getUserValues, getWarnings, isEntryConditionSatisfied, isEntryNeedingStartBit, isProcessingCompatible, isValid, processEndOfContainer, reorderItemsByStartBit, setShowAllConditionals
-
-
-
-
Constructor Detail
-
XTCETelecommandContentModel
public XTCETelecommandContentModel(XTCETelecommand tcObject, List<XTCESpaceSystem> spaceSystems, List<XTCEContainerEntryValue> userValues, boolean showAllConditions) throws XTCEDatabaseException
Constructor This constructor creates the telecommand content model object with some optional user values provided in a list. Major problems processing the container will result in an exception, but many problems encountered do not inhibit continuation. These can be inspected by calling getWarnings() after this method to retrieve any non-blocking issue descriptions.- Parameters:
tcObject- XTCETelecommand from the database object that contains all the needed entry list items.spaceSystems- List of XTCESpaceSystem objects to search for entries on the entry list.userValues- List of XTCEContainerEntryValue objects for TC Parameters and/or Arguments that are within the container. This can be null if no values are needed to be passed into conditional processing.showAllConditions- boolean indicating if unsatisfied conditional includes should be pursued at depth. This can be a performance hit if there are a large number of conditionals nested.- Throws:
XTCEDatabaseException- in the event that the telecommand cannot be completely processed.
-
XTCETelecommandContentModel
public XTCETelecommandContentModel(XTCETelecommand tcObject, List<XTCESpaceSystem> spaceSystems, BitSet binaryData) throws XTCEDatabaseException
Constructor This constructor creates the telecommand content model object with TC argument values evaluated from the binary provided in a BitSet. Major problems processing the container will result in an exception, but many problems encountered do not inhibit continuation. These can be inspected by calling getWarnings() after this method to retrieve any non-blocking issue descriptions.- Parameters:
tcObject- XTCETelecommand from the database object that contains all the needed entry list items.spaceSystems- List of XTCESpaceSystem objects to search for entries on the entry list.binaryData- BitSet containing a map of the binary data that makes up a binary instance of the container. The first bit in the set should be the zeroth bit of the telecommand binary (start bit 0) and may be short in the event that there are trailing zeros.- Throws:
XTCEDatabaseException- in the event that the telecommand cannot be completely processed.
-
-
Method Detail
-
getTelecommandReference
public XTCETelecommand getTelecommandReference()
Accessor to get the reference to the XTCETelecommand object that this model represents.- Returns:
- XTCETelecommand that is represented by this model object.
-
getContainerReference
public XTCETCContainer getContainerReference()
Accessor to get the reference to the XTCETCContainer object that this model represents.- Returns:
- XTCETCContainer that is represented by this model object.
-
processTelecommand
public final long processTelecommand() throws XTCEDatabaseExceptionThis method processes the contents of the entire telecommand into a List of XTCEContainerContentEntry objects.- Returns:
- long containing the total length of this content/container entry.
- Throws:
XTCEDatabaseException- thrown in the event that this container cannot be processed.
-
-