Class QualitativeAberrations
The class QualitativeAberrations is a collection class for QualitativeAberration objects.Overview
QualitativeAberrations |
New() |
New(QualitativeAberrationsList: String, Optional MayContainUncertainties: Boolean = True) |
item(index: Integer): QualitativeAberration |
add(ByRef NewQualitativeAberration: QualitativeAberration, Optional IgnoreQuantity: Boolean = True): void |
addRange(ByRef NewQualitativeAberrations: QualitativeAberrations, Optional IgnoreQuantity: Boolean = True): void |
clone(): Object {Implements ICloneable.Clone} |
contains(ByRef AberrationToCheck: QualitativeAberration): Boolean |
count(): Integer |
expandToResolution(Resolution: eResolutionLevel, Optional IgnoreUncertainties: Boolean = True): QualitativeAberrations |
GetEnumerator(): IEnumerator {Implements IEnumerable.GetEnumerator} |
getGainsLossesStructs(Resolution: Band.eResolutionLevel): GainsLossesStructs |
toArrayOfString(format: String): String() |
toString(): String |
toString(format: String, Optional Sorted: Boolean = True): 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()
Initializes a new QualitativeAberrations object. Its internal collection of quantitative aberrations is empty.Public Sub New(ByVal QualitativeAberrationsList As String, Optional ByVal MayContainUncertainties As Boolean = True)
Initializes a new QualitativeAberrations object. Its internal collection gets filled with the aberrations given in the QualitativeAberrationsList parameter.Parameters
- QualitativeAberrationsList: a textual description of qualitative aberrations separated by commata.
- MayContainUncertainties: can be set to "false" if the list is known to be free of uncertainties; this can speed up the program.
Exceptions
- ArgumentException: If the textual description of a qualitative aberration does not meet the patterns (regular expressions) used to recognize its constituents, an ArgumentException containing a description of the problem is thrown by the underlying QualitativeAberration class and will be passed through.
Remarks
- Duplicates in the list of aberrations will be ignored.
Examples
- myQualAberrs = New QualitativeAberrations("t(9)(q34)","t(22)(q112)") initializes a new QualitativeAberrations object with both aberrations caused by the Philadelphia translocation.
Interfaces
ICloneable
is implemented with the clone function.IEnumerable
is implemented with the GetEnumerator function.Enumerations
The class does not provide enumerations.Properties
Default Public ReadOnly Property item(ByVal index As Integer) As QualitativeAberration
Gets the QualitativeAberration object at the specified index.Property Value
- the QualitativeAberration object at the specified index.
Parameters
- index: The zero-based index of the element to get.
Exceptions
- ArgumentOutOfRangeException: index is less than zero or index is equal to or greater than count.
Remarks
- This property provides the ability to access a specific QualitativeAberration object in the QualitativeAberrations object by using the following syntax: myQualitativeAberrations(index).
- The property is read-only.
Methods
Public Sub add(ByRef NewQualitativeAberration As QualitativeAberration, Optional ByVal IgnoreQuantity As Boolean = True)
Adds NewQualitativeAberration to the collection of qualitative aberrations. If IgnoreQuantity is true, duplicates will be ignored, otherwise the quantity value will be increased.Parameters
- NewQualitativeAberration: a reference to the qualitative aberration to be added to the collection.
- IgnoreQuantity: tells whether duplicates are to be ignored (default), or in case of duplicates quantity has to be increased
Exceptions
- ArgumentNullException: the aberration to be added must not be a null reference.
Remarks
- During the analysis of a single karyotype, an aberration is counted once only and quantity is not increased if the aberration is found again because it is assumed that it happened only once and then derivative chromosomes containing more aberrations were formed based on the original aberration. Here, IgnoreQuantity is set to true.
- If more karyotypes are analysed, aberrations occured independently from each other, hence a quantity must be used and IgnoreQuantity is set to false.
- A reference to the NewQualitativeAberration is added, not a clone.
Public Sub addRange(ByRef NewQualitativeAberrations As QualitativeAberrations, Optional ByVal IgnoreQuantity As Boolean = True)
Adds the qualitative aberrations stored in NewQualitativeAberrations to the collection.Parameters
- NewQualitativeAberrations: a reference to a list of qualitative aberration objects to be added to the collection.
- IgnoreQuantity: tells whether duplicates are to be ignored (default), or in case of duplicates quantity has to be increased
Remarks
- During the analysis of a single karyotype, an aberration is counted once only and quantity is not increased if the aberration is found again because it is assumed that it happened only once and then derivative chromosomes containing more aberrations were formed based on the original aberration. Here, IgnoreQuantity is set to true.
- If more karyotypes are analysed, aberrations occured independently from each other, hence a quantity must be used and IgnoreQuantity is set to false.
- A reference to each QualitativeAberration of NewQualitativeAberrations is added, not a clone.
Public Function clone() As Object Implements ICloneable.Clone
Creates a deep copy of the QualitativeAberrations object; i.e. while cloning, each QualitativeAberration object contained in the collection is cloned.Return Value
- A deep copy of the QualitativeAberrations object.
Implements
Remarks
- A deep copy copies not only the elements of the internal collection, but it does also copy the objects that the references refer to.
- QualitativeAberration.clone() is called for each QualitativeAberration object.
Public Function contains(ByRef AberrationToCheck As QualitativeAberration) As Boolean
Determines whether AberrationToCheck is in the internal collection of the QualitativeAberrations object.Parameters
- AberrationToCheck: a reference to the QualitativeAberration object to locate in the QualitativeAberrations object. It must not be a null reference.
Return Value
- true, if AberrationToCheck is found in the QualitativeAberrations object.
- false, otherwise.
Exceptions
- ArgumentNullException: AberrationToCheck must not be a NULL reference.
Remarks
- This method performs a linear search; therefore, the average execution time is proportional to count. That is, this method is an O(n) operation, where n is count.
- This method determines equality by calling QualitativeAberration.equals(CompareBand, True).
Public Function count() As Integer
Gets the number of QualitativeAberration objects actually contained in the QualitativeAberrations object.Public Function expandToResolution(ByRef Resolution As Band.eResolutionLevel, Optional ByRef IgnoreUncertainties As Boolean = True) As QualitativeAberrations
Returns a QualitativeAberrations object containing QualitativeAberration objects corresponding to the aberrations of this list at the given resolution.Return Value
- a QualitativeAberrations object containing QualitativeAberration objects corresponding to the aberrations of this list at the given resolution.
Parameters
- Resolution: the banding resolution to be met by the aberrations.
- IgnoreUncertainties: If set to true, all aberrations containing uncertainties will be ignored (default), otherwise the information about the uncertainty will be lost.
Remarks
- Uses the Band.expandToResolution function.
Public Function GetEnumerator() As IEnumerator Implements IEnumerable.GetEnumerator
Returns an enumerator that can iterate through the collection of QualitativeAberration objects of this QualitativeAberrations object. The list is sorted.Implements
Remarks
- The underlying collection is sorted first.
Public Function getGainsLossesStructs(ByVal Resolution As Band.eResolutionLevel) As GainsLossesStructs
Returns a GainsLossesStructs object listing the bands at the specified resolution level with the number of gains, losses and structural (qualitative) aberrations having occured there ("cytoband list"). Because this object describes qualitative aberrations, gains and losses are zero.Return Value
- a GainsLossesStructs object listing the bands at the specified resolution level with the number of gains, losses and structural (qualitative) aberrations having occured there.
Parameters
- Resolution: the banding resolution to be met by the list.
Remarks
- This return type is also used by the QuantitativeAberration(s) classes. For compatibilty, it contains both gains and losses as well as structural aberrations.
Public Function toArrayOfString(ByVal format As String) As String()
Returns an array with textual descriptions of the list of qualitative aberrations using the Simplified Computer readable Cytogenetic Notation (SCCN). The type of aberration follows either the ISCN or the expanded notation or a special short form. The list is sorted.Return Value
- an array with textual descriptions of the qualitative aberrations.
Parameters
- format: "S" causes the ISCN to be used for the aberration type, "E" the expanded notation, "M" is a short format used with data mining purposes.
Remarks
- If an unknown format is specified, the standard format will be used.
- Sorting causes the order in the underlying collection to be changed.
Public Shadows Function toString() As String
Returns a textual description of the list of qualitative aberrations using the Simplified Computer readable Cytogenetic Notation (SCCN). Qualitative aberrations are sorted and separated by commata.Return Value
- a textual description of the qualitative aberrations using SCCN.
Remarks
- delegates to 'toString("S", True)'.
- Sorting causes the order in the underlying collection to be changed.
Public Shadows Function toString(ByVal format As String, Optional ByVal Sorted As Boolean = True) As String
Returns a textual description of the list of qualitative aberrations using the Simplified Computer readable Cytogenetic Notation (SCCN). The type of aberration follows either the ISCN or the expanded notation or a special short form. The list may be sorted.Return Value
- a textual description of the qualitative aberrations using SCCN.
Parameters
- format: "S" causes the ISCN to be used for the aberration type, "E" the expanded notation, "M" is a short format used with data mining purposes.
- Sorted: true, if the list is to be sorted (default); false, otherwise.
Remarks
- If an unknown format is specified, the standard format will be used.
- Sorting causes the order in the underlying collection to be changed.
Interaction with other classes
Classes using QualitativeAberrations
The QualitativeAberrations class is integral part in the Karyotype and Aberration classes.
Classes used by QualitativeAberrations
A QualitativeAberrations object contains zero to many objects of QualitativeAberration type.The GainLossStruct and GainsLossesStructs classes are used in a function returning the latter type.