Interface ConjugateEdgeSegment
-
- All Superinterfaces:
Comparable<IdAble>
,EdgeSegment
,ExternalIdAble
,GraphEntity
,IdAble
,ManagedId
,Serializable
- All Known Subinterfaces:
ConjugateConnectoidSegment
,ConjugateLinkSegment
- All Known Implementing Classes:
ConjugateConnectoidSegmentImpl
,ConjugateEdgeSegmentImpl
,ConjugateLinkSegmentImpl
public interface ConjugateEdgeSegment extends EdgeSegment
Conjugate version of edge segment representing connection between two edge segments on origin network- Author:
- markr
-
-
Field Summary
Fields Modifier and Type Field Description static Class<ConjugateEdgeSegment>
CONJUGATE_EDGE_SEGMENT_ID_CLASS
id class for generating ids-
Fields inherited from interface org.goplanit.utils.graph.directed.EdgeSegment
EDGE_SEGMENT_ID_CLASS, getDownstreamVertex, getUpstreamVertex
-
-
Method Summary
All Methods Instance Methods Abstract Methods Default Methods Modifier and Type Method Description ConjugateEdgeSegment
deepClone()
An id entity should always support a deep copy, i.e., all "owned" members will be deep copied when a clone of this instance is created via this call.default ConjugateDirectedVertex
getDownstreamVertex()
Get the segment's downstream vertexdefault Class<? extends ConjugateEdgeSegment>
getIdClass()
All edges use the CONJUGATE_EDGE_SEGMENT_ID_CLASS to generate the unique internal idsdefault ConjugateEdgeSegment
getOppositeDirectionSegment()
Collect the opposite direction segment of this edge segment (if any)default Pair<? extends EdgeSegment,? extends EdgeSegment>
getOriginalAdjcentEdgeSegments()
Adjacent edge segments in original graph for this conjugateConjugateDirectedEdge
getParent()
Collect the parent edge of the segmentdefault ConjugateDirectedVertex
getUpstreamVertex()
Get the segment's upstream vertexConjugateEdgeSegment
shallowClone()
Create a shallow copy of this entity-
Methods inherited from interface org.goplanit.utils.graph.directed.EdgeSegment
getLengthKm, getParentName, hasGeometry, hasParent, hasParentName, isAdjacent, isDirectionAb, isParentGeometryInSegmentDirection, removeParentEdge, setParent, validate
-
Methods inherited from interface org.goplanit.utils.id.ExternalIdAble
appendExternalId, appendExternalId, getExternalId, getIdsAsString, getSplitExternalId, getSplitExternalId, getXmlId, hasExternalId, hasXmlId, setExternalId, setXmlId, setXmlId
-
Methods inherited from interface org.goplanit.utils.id.IdAble
compareTo, getId, idEquals, idHashCode
-
Methods inherited from interface org.goplanit.utils.id.ManagedId
recreateManagedIds, resetChildManagedIdEntities
-
-
-
-
Field Detail
-
CONJUGATE_EDGE_SEGMENT_ID_CLASS
static final Class<ConjugateEdgeSegment> CONJUGATE_EDGE_SEGMENT_ID_CLASS
id class for generating ids
-
-
Method Detail
-
getUpstreamVertex
default ConjugateDirectedVertex getUpstreamVertex()
Get the segment's upstream vertex- Specified by:
getUpstreamVertex
in interfaceEdgeSegment
- Returns:
- upstream vertex
-
getDownstreamVertex
default ConjugateDirectedVertex getDownstreamVertex()
Get the segment's downstream vertex- Specified by:
getDownstreamVertex
in interfaceEdgeSegment
- Returns:
- downstream vertex
-
getParent
ConjugateDirectedEdge getParent()
Collect the parent edge of the segment- Specified by:
getParent
in interfaceEdgeSegment
- Returns:
- parentEdge
-
shallowClone
ConjugateEdgeSegment shallowClone()
Create a shallow copy of this entity- Specified by:
shallowClone
in interfaceEdgeSegment
- Specified by:
shallowClone
in interfaceGraphEntity
- Specified by:
shallowClone
in interfaceIdAble
- Returns:
- shallow copy of entity
-
deepClone
ConjugateEdgeSegment deepClone()
An id entity should always support a deep copy, i.e., all "owned" members will be deep copied when a clone of this instance is created via this call. To be used with caution if not called by managed id container related code- Specified by:
deepClone
in interfaceEdgeSegment
- Specified by:
deepClone
in interfaceGraphEntity
- Specified by:
deepClone
in interfaceIdAble
- Returns:
- deep copy of entity
-
getIdClass
default Class<? extends ConjugateEdgeSegment> getIdClass()
All edges use the CONJUGATE_EDGE_SEGMENT_ID_CLASS to generate the unique internal ids- Specified by:
getIdClass
in interfaceEdgeSegment
- Specified by:
getIdClass
in interfaceManagedId
- Returns:
- idClass to use for generating ids for instances of this idable derived class
-
getOppositeDirectionSegment
default ConjugateEdgeSegment getOppositeDirectionSegment()
Collect the opposite direction segment of this edge segment (if any)- Specified by:
getOppositeDirectionSegment
in interfaceEdgeSegment
- Returns:
- opposite direction segment, null if not present
-
getOriginalAdjcentEdgeSegments
default Pair<? extends EdgeSegment,? extends EdgeSegment> getOriginalAdjcentEdgeSegments()
Adjacent edge segments in original graph for this conjugate- Returns:
- edge segment pair
-
-