Class KaryotypesCollection

The class KaryotypesCollection stores a set of cases which were analysed by chromosomal banding technics. Its basic item is a case.

Overview

KaryotypesCollection
New()
item( index: Integer): Karyotypes {readonly; default}
addCase(ByRef NewCase: Karyotypes): Void
getKaryotypes(): IEnumerator {Implements IEnumerable.GetEnumerator}
getKaryotypesFlat(): IEnumerator {Implements IEnumerable.GetEnumerator}
createMiningDataFromGainsLossesStructs(Resolution: ChromosomeData.eResolutionLevel): MiningInputData {Implements IMinable.createMiningDataFromGainsLossesStructs}
createMiningDataFromSCCNAberrations(Resolution: ChromosomeData.eResolutionLevel): MiningInputData {Implements IMinable.createMiningDataFromSCCNAberrations}
createMiningDataFromStandardAberrationElements(): MiningInputData {Implements IMinable.createMiningDataFromStandardAberrationElements}

Programming Language

  • Microsoft Visual Basic .Net.

Availability

Constructors

Public Sub New()

Instantiates a new KaryotypesCollection object.

The internal collection is empty. Cases are then added by the addCase function.

Interfaces

This class implements the following interfaces:

IEnumberable

is used for the enumeration of collections. It is implemented with the getKaryotypes and getKaryotypesFlat functions.

IMinable

is a locally defined interface used for the generation of mining input from collections. It is implemented with the createMiningDataFromGainsLossesStructs, createMiningDataFromSCCNAberrations, and createMiningDataFromStandardAberrationElements functions.

Enumerations

The class does not provide enumerations.

Properties

item(ByVal index As Integer) As Karyotypes

Gets the case (a Karyotypes object) at the specified index.

Property Value

  • the case at the specified index.

Parameter

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

Exceptions

Remarks

  • This property provides the ability to access a specific case (Karyotypes object) in this collection by using the following syntax: myKaryotypesCollection(index).
  • The property is read only. For adding a case, use the addCase function. No functionality is provided for removing a case.

Methods

Public Sub addCase(ByRef NewCase As Karyotypes)

Adds a new case to the internal collection.

Parameters

Remarks

  • A reference to the case is added. Hence, changing the properties of the original case after its addition to the collection will also cause changes of the case in the collection.
  • No functionality for removing a case is provided.

Public Function getKaryotypes() As IEnumerator Implements IEnumerable.GetEnumerator

Returns an enumerator that can iterate through the collection of cases (Karyotypes objects) of this collection.

Implements

Remarks

  • The underlying collection is not sorted.
  • To get the single karyotype objects instead of the cases, use the getKaryotypesFlat() function.

Public Function getKaryotypesFlat() As IEnumerator Implements IEnumerable.GetEnumerator

Returns an enumerator that can iterate through the karyotypes contained in the collection of cases (i.e. the underlying Karyotype objects contained in the Karyotypes objects) of this collection.

Implements

Remarks

  • The underlying collection is not sorted.
  • To get the cases instead of their karyotypes, use the getKaryotypes() function instead.

Public Function createMiningDataFromGainsLossesStructs(Optional ByVal Resolution As ChromosomeData.eResolutionLevel = ChromosomeData.eResolutionLevel.ResolutionArm) As MiningInputData Implements IMinable.createMiningDataFromGainsLossesStructs

Creates a MiningInputData object from the cytoband list of aberrations (GainsLossesStructs) calculated from the data of this collection.

Return Value

  • a MiningInputData object based on the cytoband list.

Parameters

  • Resolution: the resolution required for the calculation of the cytoband list.

Implements

Remarks

  • If a case contains more than one karyotype, each karyotype is regarded as a case of its own.
  • If no resolution is given, the resolution will be set to chromosomal arm.
  • The function calculates the cytoband list for each case at the required resolution and adds it to the mining data.
  • At the level of the chromosomal bands, the function inquires if an aberration did occur there; its quantity does not matter.

Public Function createMiningDataFromSCCNAberrations(Optional ByVal Resolution As ChromosomeData.eResolutionLevel = ChromosomeData.eResolutionLevel.ResolutionNone) As MiningInputData Implements IMinable.createMiningDataFromSCCNAberrations

Creates a MiningInputData object from the SCCN aberrations (QuantitativeAberrations and QualitativeAberrations) calculated from the data of this collection.

Return Value

  • a MiningInputData object based on the SCCN aberrations.

Parameters

  • Resolution: the resolution required for the calculation of the SCCN aberrations.

Implements

Remarks

  • If a case contains more than one karyotype, each karyotype is regarded as a case of its own.
  • If no resolution is given, the resolution will be set to none.
  • The function calculates the SCCN aberations for each case at the required resolution and adds them to the mining data.
  • Only the occurence of an SCCN aberration, but not its quantity, is relevant in this function.

Public Function createMiningDataFromStandardAberrationElements() As MiningInputData Implements IMinable.createMiningDataFromStandardAberrationElements

Creates a MiningInputData object from the standard aberration elements (ISCN aberrations) calculated from the data of this collection.

Return Value

  • a MiningInputData object based on the standard ISCN aberrations.

Implements

Remarks

  • If a case contains more than one karyotype, each karyotype is regarded as a case of its own.
  • Only the occurence of an aberration, but not its quantity, is relevant in this function.
  • Aberrations are not standardized towards a common banding resolution.

Interaction with other classes

Classes using KaryotypesCollection

The KaryotypesCollection class is a top level class in the ISCNAnalyser dll. It is not linked from other classes.

Classes used by KaryotypesCollection

The KaryotypesCollection class contains a set of Karyotypes objects representing the cases.

For mining purposes, GainsLossesStructs and QuantitativeAberrations objects are calculated. The connection with the CyDASMining dll, especially the MiningInputData, is important. For interchangability of CGH cases and ISCN cases for mining purposes, the interface IMinable was created in the ISCNAnalyser dll.