Package xal.smf
Class Ring
- All Implemented Interfaces:
Comparable
,ElementType
,DataListener
Ring is a subclass of combo sequence that is intended to support the special
needs of a Ring. A ring is made up of ring segments.
- Author:
- tap
-
Field Summary
FieldsFields inherited from class xal.smf.AcceleratorSeq
arrNodes, bucSequence, nodeTable, sequences
-
Constructor Summary
ConstructorsConstructorDescriptionRing
(String strID, List<AcceleratorSeq> segments) Primary ConstructorRing
(String strID, Accelerator accelerator, DataAdaptor adaptor) Constructor -
Method Summary
Modifier and TypeMethodDescriptiondouble
getRelativePosition
(double position, AcceleratorNode referenceNode) Convert the sequence position to a position relative to the specified reference node.double
getShortestRelativePosition
(AcceleratorNode node, AcceleratorNode referenceNode) Get the shortest relative position of one node with respect to a reference node.boolean
isLinear()
Identify whether the sequence is within a linear section.Methods inherited from class xal.smf.AcceleratorSeqCombo
equals, getAllInclusiveNodes, getAllNodes, getAperProfile, getBaseConstituents, getBaseConstituentsWithQualifier, getConstituentNames, getConstituents, getConstituentsWithQualifier, getEntranceID, getInstance, getInstance, getInstance, getInstanceForRange, getInstancesForRange, getLength, getNodes, getNodeWithId, getPosition, getSequences, getSequences, getType, hashCode, write
Methods inherited from class xal.smf.AcceleratorSeq
addBucket, addNode, addNodeAt, addSequenceChain, addSoft, appendNodesOfClassWithQualifier, appendNodesWithQualifier, canPrecede, contains, dataLabel, filterNodesByClass, filterNodesByStatus, formsRing, getAllInclusiveNodes, getAllInclusiveNodesWithQualifier, getAllNodes, getAllNodesOfType, getAllNodesWithQualifier, getAllSeqs, getAperProfile, getDistanceBetween, getIndexOfNode, getLeaves, getNodeAt, getNodeCount, getNodes, getNodesOfClassWithQualifier, getNodesOfClassWithQualifier, getNodesOfClassWithStatus, getNodesOfType, getNodesOfType, getNodesWithQualifier, getNodesWithQualifier, getPredecessors, getPrimaryAncestor, getRelativePosition, getSequence, getSequenceBuc, getSequences, indexToAddNode, orderSequences, recurNodeSearch, recurSeqSearch, removeAllNodes, removeNode, setSequence, sortNodes, sortNodesByProximity, sortNodesByRelativePosition, update, writeAttributes, writeDeeply, writeStatus
Methods inherited from class xal.smf.AcceleratorNode
batchConnectAllHandles, batchConnectAllHandlesAndWait, channelSuite, clear, compareTo, findChannel, getAccelerator, getAccessibleProperties, getAccessibleProperties, getAlign, getAllChannels, getAndConnectChannel, getAndConnectChannelSetAndReadback, getAper, getBucket, getBuckets, getChannel, getDefaultHandles, getDesignPropertyValue, getEId, getHandles, getId, getLivePropertyChannels, getLivePropertyValue, getParent, getPId, getPitchAngle, getPosition, getProperties, getReadbackHandles, getRollAngle, getSDisplay, getSetHandle, getSoftType, getStatus, getTwiss, getValid, getXOffset, getYawAngle, getYOffset, getZOffset, hasBucket, hasParent, isChannelSettable, isKindOf, isMagnet, lazilyGetAndConnect, removeFromParent, setAccelerator, setAlign, setAper, setDesignPropertyValue, setLength, setLivePropertyValue, setParent, setPitchAngle, setPosition, setRollAngle, setSDisplay, setStatus, setTwiss, setValid, setValueAndVerify, setXOffset, setYawAngle, setYOffset, setZOffset, toString
-
Field Details
-
TYPE
node type- See Also:
-
-
Constructor Details
-
Ring
Primary Constructor -
Ring
Constructor
-
-
Method Details
-
isLinear
public boolean isLinear()Identify whether the sequence is within a linear section. This helps us to determine whether it is meaningful to identify one node as being downstream from another.- Overrides:
isLinear
in classAcceleratorSeq
- Returns:
- false since by definition the ring is not a linear section
-
getRelativePosition
Convert the sequence position to a position relative to the specified reference node.- Overrides:
getRelativePosition
in classAcceleratorSeq
- Parameters:
position
- the position of a location relative to the sequence's startreferenceNode
- the node relative to which we wish to get the position
-
getShortestRelativePosition
Get the shortest relative position of one node with respect to a reference node. This is really useful for ring sequences.- Overrides:
getShortestRelativePosition
in classAcceleratorSeq
- Parameters:
node
- the node whose relative position is soughtreferenceNode
- the reference node relative to which the node's position is calculated- Returns:
- the distance (positive or negative) of the node with respect to the reference node whose magnitude is shortest
-