Class Fusion
The class Fusion describes a fusion product originating from a chromosomal aberration on a cytogenetic level. "Fusions" are also called "Junctions".Fusions are described by the chromosomal bands which were fused to each other, and their directions. All directions are given in a pter->qter view (i.e. corresponding to "plus strand" and "minus strand" as used for sequencing purposes).
Overview
Fusion |
New() |
New(ByRef FirstBand: Band, ByRef SecondBand: Band, Optional FirstOrientation: Fragment.eOrientation = Fragment.eOrientation.PlusStrand, Optional SecondOrientation: Fragment.eOrientation = Fragment.eOrientation.PlusStrand, Optional MultiplicatorMin: Integer = 1, Optional MultiplicatorMax: Integer = 1, Optional Questionable: Boolean = False) |
FirstBand(): Band {read-only} |
MultiplicatorMax(): Integer |
MultiplicatorMin(): Integer |
OrientationAtFirstBand(): Fragment.eOrientation |
OrientationAtSecondBand(): Fragment.eOrientation |
Questioned(): Boolean |
SecondBand(): Band {read-only} |
clone(): Object {Implements ICloneable.Clone} |
compareTo(obj: Object): Integer {Implements IComparable.CompareTo} |
equals(ByRef SecondFusion: Fusion, Optional Strict: Boolean = False): Boolean |
toString(): String |
toString(format: String): String |
Programming Language
- Microsoft Visual Basic .Net.
Availability
- Copyrighted but free software under the GNU Public License.
- Binaries and source code can be obtained from the Download section.
Constructors
Public Sub New()
Instantiates a new Fusion object.Public Sub New(ByRef FirstBand As Band, ByRef SecondBand As Band, Optional ByVal FirstOrientation As Fragment.eOrientation = Fragment.eOrientation.PlusStrand, Optional ByVal SecondOrientation As Fragment.eOrientation = Fragment.eOrientation.PlusStrand, Optional ByVal MultiplicatorMin As Integer = 1, Optional ByVal MultiplicatorMax As Integer = 1, Optional ByVal Questionable As Boolean = False)
Instantiates a new Fusion object with the given parameters.Parameters
- FirstBand: a reference to the band object describing the first band of the bands fused.
- SecondBand: a reference to the band object describing the second band of the bands fused.
- FirstOrientation: the orientation towards the first band on its fragment as seen from a pter -> qter view. Default plus-strand.
- SecondOrientation: the orientation towards the second band on its fragment as seen from a pter -> qter view. Default plus-strand.
- MultiplicatorMin: the minimum frequency of the occurence of this fusion. Default 1.
- MultiplicatorMax: the maximum frequency of the occurence of this fusion. Default 1.
- Questionable: indicates if the existence of this fusion is questionable. Default false.
Remarks
- If the maximum multiplicator is less than the minimum multiplicator, its value is set to the value of the minimum multiplicator.
- Bands are ordered with Band.compareTo so that FirstBand comes before SecondBand.
Examples
- To create a fusion object describing the fusion on a Philadelphia chromosome, do:
Dim oFirstBand as Band = New Band("22q11.2")
Dim oSecondBand as Band = New Band("9q34.1")
Dim oFusion as Fusion
oFusion = New Fusion(oFirstBand, oSecondBand, Fragment.eOrientation.PlusStrand, Fragment.eOrientation.MinusStrand)
(The orientation at 22q11.2 is plus strand, since we come from 22pter to that point. At 9q34.1, the orientation is minus strand because we come from the qter to the break point. This may seem confusing at the first view.)
Interfaces
IComparable
is implemented with the compareTo function.ICloneable
is implemented with the clone function.Enumerations
The class does not provide enumerations.Properties
Public ReadOnly Property FirstBand() As Band
Gets the value of the first band of this fusion.Property Value
- the value of the first band of this fusion.
Remarks
- The property is set read-only in order to maintain the proper order of bands.
Public Property MultiplicatorMax() As Integer
Gets or sets the maximum value for the multiplicator.Property Value
- the maximum value for the multiplicator.
Public Property MultiplicatorMin() As Integer
Gets or sets the minimum value for the multiplicator.Property Value
- the minimum value for the multiplicator.
Public Property OrientationAtFirstBand() As Fragment.eOrientation
Gets or sets the value for the orientation at the first band of this fusion.Property Value
- the value for the orientation at the first band of this fusion.
Remarks
- If FirstBand can be reached along the plus-strand (i.e. from pter to qter), the orientation is "plus-strand", else "minus-strand" (except for unknown orientation).
- The values for the orientation are defined in the Fragment.eOrientation enumeration.
Public Property OrientationAtSecondBand() As Fragment.eOrientation
Gets or sets the value for the orientation at the second band of this fusion.Property Value
- the value for the orientation at the second band of this fusion.
Remarks
- If SecondBand can be reached along the plus-strand (i.e. from pter to qter), the orientation is "plus-strand", else "minus-strand" (except for unknown orientation).
- The values for the orientation are defined in the Fragment.eOrientation enumeration.
Public Property Questioned() As Boolean
Gets or sets the value indicating if the existence of this fusion is questioned.Property Value
- the value indicating if the existence of this fusion is questioned.
Remarks
- If it is a band of the fusion which is questioned but not the existence of the fusion itself, the corresponding band has to be marked as questioned.
Public ReadOnly Property SecondBand() As Band
Gets the value of the second band of this fusion.Property Value
- the value of the second band of this fusion.
Remarks
- The property is set read-only in order to maintain the proper order of bands.
Methods
Public Function clone() As Object Implements ICloneable.Clone
Returns a deep copy of the fusion object.Return Value
- a deep copy of the fusion object.
Parameters
- none
Implements
Remarks
- A deep copy means that reference type data are also cloned.
Public Function compareTo(ByVal obj As Object) As Integer Implements IComparable.CompareTo
Compares this instance to a specified Fusion object and returns an indication of their relative values.Return Value
- <0: This fusion object comes before the other object.
- 0: Both fusion objects are equal.
- >0: This fusion object comes before the other object.
Parameters
- obj: the Fusion to be compared with this fusion.
Exception
- ArgumentException: is thrown when obj cannot be cast into Fusion type.
Implements
Remarks
- Comparison is performed along the following steps until non-equality was discovered:
- the first bands of the fusion objects
- the second bands of the fusion objects
- the orientation at first band
- the orientation at second band
- the minimum multiplicator
- the maximum multiplicator
Public Overloads Function equals(ByRef SecondFusion As Fusion, Optional ByVal Strict As Boolean = False) As Boolean
Two fusion objects are regarded equal, when they share their bands and their directions.if Strict is true, they must also share their multipicators and questioned-state.
Return Value
- true, if both fusions are found to be equal.
- false, otherwise.
Parameters
- SecondFusion: a reference to a fusion object to be compared with this fusion object.
- Strict: indicates if the fusion objects have to share all their parameters.
Remarks
- SecondFusion is not changed during the calculation process.
Public Shadows Function toString() As String
Returns a textual representation of the fusion object.Return Value
- a textual representation of the fusion object.
Remarks
- No generally accepted notation for fusion objects exists upto now. Here, a detailed version which also shows the directions, is used.
- The function actually passes through to toString("E").
Examples
-
The fusion in the Philadelphia chromosome "der(22)t(9;22)(q34;q11)"
is described as:
"(-)(9)(q34)::(22)(q11)(+)".
Public Shadows Function toString(ByVal format As String) As String
Returns a textual representation of the fusion object with the respective format.Return Value
- a textual representation of the fusion object.
Parameters
-
format: a short description of the format
The following values are defined: - "E": extended format showing also the directions at the fusion point
- "S": short format as used by the NCBI showing the bands only.
Remarks
- No generally accepted notation for fusion objects exists upto now. A detailed version was developed to show the orientations at the bands; alternatively, the short format of the NCBI can be used.
- The NCBI format is not clearly defined: e.g. no definition can be found on the difference of "9q34J22q11" and "22q11J9q34"
Examples
-
The fusion in the Philadelphia chromosome "der(22)t(9;22)(q34;q11)"
is described as:
- toString("E"): "(-)(9)(q34)::(22)(q11)(+)".
- toString("S"): "9q34J22q11".