Class Karyotypes

The class Karyotypes describes the karyotypes of different clones of a tumour. It provides functions for accessing the individual karyotypes and calculating a composite karyotype.

A karyotypes object can also be viewed as a "case".

Overview

Karyotypes
New() 
New(KaryotypeList: String)
Aberrations(): Aberrations {read-only}
CaseID(): String
CaseDescription(): String
CompositeKaryotype: Karyotype {read-only}
item(index. Integer): Karyotype {default; read-only}
QualitativeAberrations(): QualitativeAberrations {read-only}
QuantitativeAberrations(): QuantitativeAberrations {read-only}
add(ByRef NewKaryotype: Karyotype): void
analyseAll(): void
count(): Integer
expand(ByRef KaryotypeToBeExpanded: Karyotype, ByRef HelperKaryotype: Karyotype): Boolean {shared}
GetEnumerator(): IEnumerator {Implements IEnumerable.GetEnumerator}
setKaryotypeList(KaryotypeList: String) 
toString(): String

Programming Language

  • Microsoft Visual Basic .Net.

Availability

Constructors

Public Sub New()

Instantiates a new Karyotypes object.

Remarks

  • Apart from its use with VBA (MS Access), this constructor can be used for generating an empty collection which can then be filled using the add function or the setKaryotypeList function.

Examples

  • When using VBA (MS Access), the descriptions of the individual karyotypes have to be added into a string with a "/" as a separator:

  • Dim myKaryotype1 As String
    Dim myKaryotype2 As String
    Dim myKaryotypes As Karyotypes
    myKaryotype1 = "46,XX,t(9;22)(q34;q11)"
    myKaryotype2 = "47,XX,t(9;22)(q34;q11),+der(22)t(9;22)"
    myKaryotpes = New Karyotypes
    myKaryotypes.setKaryotypeList(myKaryotype1 & "/" & myKaryotype2)

Public Sub New(ByVal KaryotypeList As String)

Instantiates a new Karyotypes object. Its internal collection is filled with the karyotypes described in the list.

Parameters

  • KaryotypeList: a slash ("/") separated list of karyotypes written in ISCN.

Exceptions

Remarks

Examples

  • Dim myKaryotypes As Karyotypes

  • myKaryotpes = New Karyotypes("46,XX,t(9;22)(q34;q11)/47,XX,t(9;22)(q34;q11),+der(22)t(9;22)")

Interfaces

IEnumerable

is implemented with the GetEnumerator function.

Enumerations

The class does not provide enumerations.

Properties

Public ReadOnly Property Aberrations() As Aberrations

Gets the aberrations associated with these karyotypes.

Property Value

  • the aberrations associated with these karyotypes.

Remarks

  • The aberrations are calculated only once; when they are requested again, the previous value is returned.
  • If the CompositeKaryotype is valid, the aberrations are retrieved from it. Else, aberrations are retrieved from all valid karyotypes of the collection. If no karyotype is valid, an empty Aberrations object will be returned.

Public Property CaseID() As String

Gets or sets the identifier for the case.

Property Value

  • the identifier for the case.

Remarks

Public Property CaseDescription() As String

Gets or sets the description for the case.

Property Value

  • the description for the case.

Remarks

  • This property is fully optional.

Public ReadOnly Property CompositeKaryotype() As Karyotype

Gets a composite karyotype calculated from the karyotypes of the collection.

Property Value

  • a composite karyotype calculated from the karyotypes of the collection.

Exceptions

Remarks

Default Public ReadOnly Property item(ByVal index As Integer) As Karyotype

Gets the Karyotype object (case) at the specified index.

Parameters

  • index: The zero-based index of the element to get.

Property Value

  • The Karyotype object at the specified index.

Exceptions

Remarks

  • This property provides the ability to access a specific Karyotype object in the Karyotypes object by using the following syntax: myKaryotypes(index).

Public ReadOnly Property QualitativeAberrations() As QualitativeAberrations

Gets the QualitativeAberrations associated with these karyotypes.

Property Value

Remarks

Public ReadOnly Property QuantitativeAberrations() As QuantitativeAberrations

Gets the QuantitativeAberrations associated with these karyotypes.

Property Value

  • the QuantitativeAberrations associated with these karyotypes.

Remarks

  • The QuantitativeAberrations are calculated only once; when they are requested again, the previous value is returned.
  • If the CompositeKaryotype is valid, the QualitativeAberrations are retrieved from it. Else, aberrations are retrieved from all valid karyotypes of the collection. If no karyotype is valid, an empty QuantitativeAberrations object will be returned.

Methods

Public Sub add(ByRef NewKaryotype As Karyotype)

Adds NewKaryotype to the collection of karyotypes.

Return Value

  • None

Parameters

  • NewKaryotype: a reference to the karyotype to be added to the collection.

Exceptions

Remarks

  • A reference is added, not a clone.
  • Changing the karyotype externally will also change this karyotype in the collection;
    inside the collection, the karyotype may be changed for analysis or break points addition.
  • Calculated values of the collection (Aberrations, CompositeKaryotype etc). are reset to null references.

Public Sub analyseAll()

Analyses all karyotypes of the collection.

Return Value

  • None

Parameters

  • None

Remarks

  • The analysis is only performed once, except when changes were introduced into the collection meanwhile.
  • The individual karyotypes are analysed by a call to Karyotype.isValidKaryotype().
  • If break points are missing for aberrations, they are searched for from other karyotypes of the same investigation.
  • The "idem" term is replaced by the appropriate aberrations from the first karyotype in the series.

Public Function count() As Integer

Gets the number of Karyotype objects actually contained in the Karyotypes object.

Public Function GetEnumerator() As IEnumerator Implements IEnumerable.GetEnumerator

Returns an enumerator that can iterate through the collection of band objects of this Bands object.

Implements

Public Sub setKaryotypeList(ByVal KaryotypeList As String)

Fills the internal collection of karyotypes with the karyotypes from the list.

Parameters

  • KaryotypeList: a slash ("/") separated list of karyotypes written in ISCN.

Exceptions

Remarks

  • This function is available for use with VBA (MS Access).
  • It can be used in connection with the parameter-less constructor only.
  • It must not be called a second time.

Interaction with other classes

Classes using Karyotypes

The Karyotypes class is not used by other classes of the ISCNAnalyser dll.

Classes used by Karyotypes

The Karyotypes class is a collection class for the Karyotype class. A Karyotypes object may contain 0, 1 or many Karyotype objects.