Pipetting (from HSLExtensions)

https://github.com/theonetruenerd/VenusPackages/blob/main/Pipetting.pkg

The pipetting library from HSL Extensions adds functions related to pipetting, primarily to do with sequences and channel patterns. The functions it adds are:

CreateMixedChannelPattern(array i_arrUseChannel, variable i_intTotalNumberOfChannels)

This function generates a “mixed” channel pattern. The channel pattern generated will be based on the input array, and then will be filled with “0”s up to the total number of channels (normally 8). If the array size is greater than the total number of channels inputted, the channel pattern will be limited to whatever the total number of channels inputted is. E.g. if the array is [1,1,1,1,0,0,1,0,0,0,1] and the input channel number is 8, the channel pattern generated will be “11110010”.

Params i_arrUseChannel:

A boolean array of which channels should be used.

Params i_intTotalNumberOfChannels:

The total number of channels being used.

Returns:

The channel pattern generated by the function

Return type:

String

CreateOrderedChannelPattern(variable i_intNumberOfUsedChannels, variable i_intTotalNumberOfChannels)

This function creates an ordered channel pattern, generating a string with as many “1”s in it as the inputted number of used channels, and adding “0”s until the total length of the channel pattern is equal to the total number of channels inputted. If the total number of used channels is greater than the total number of channels, the channel pattern will be truncated to the total number of channels. E.g. if the number of used channels is 3 and the total number of channels is 8, the channel pattern generated will be “11100000”. If these numbers were reversed, the channel pattern generated would simply be “111”. :params i_intNumberOfUsedChannels: The number of “active” channels wishing to be used in the channel pattern :params i_intTotalNumberOfChannels: The max number of channels available (usually 8 on a STAR) :type i_intNumberOfUsedChannels: Variable :type i_intTotalNumberOfChannels: Variable :return: The channel pattern generated by the function :rtype: String

ParseChannelPattern(variable i_strChannelPattern)

This function parses a channel pattern given as a string and creates a boolean array of the channels being used. If the input has the wrong type, or contains not allowed characters, the result is an empty array.

Params i_strChannelPattern:

The channel pattern to be parsed

Returns:

The array of booleans with the channels being used in the channel pattern

Return type:

Array

Plate384PositionNumberToPositionText(variable i_intPositionNumber, variable o_strPositionText)

This function converts position number to position text for a 384 well plate. E.g. if given a 1 it will convert it to A1, if given a 16 it will convert it to P1, etc.

Params i_intPositionNumber:

The position number to be converted. Any int in the range of 1-384.

Params o_strPositionText:

The position text which will be the output. Will be a string of any of the well identifiers on a 384 well plate (i.e. A1-P24)

Returns:

A boolean of whether the conversion was successful

Return type:

Boolean

Plate384PositionNumberToPositionText(variable i_strPositionText, variable o_intPositionNumber)

This function converts position text to position number for a 384 well plate. E.g. if given A1 it will convert it to a 1, if given P1 it will convert it to a 16, etc.

Params i_strPositionText:

The position text to be converted. Will be a string of any of the well identifiers on a 384 well plate (i.e. A1-P24)

Params o_intPositionNumber:

The position number which will be the output. Any int in the range of 1-384.

Returns:

A boolean of whether the conversion was successful

Return type:

Boolean

Plate96PositionNumberToPositionText(variable i_intPositionNumber, variable o_strPositionText)

This function converts position number to position text for a 96 well plate. E.g. if given a 1 it will convert it to A1, if given an 8 it will convert it to H1, etc.

Params i_intPositionNumber:

The position number to be converted. Any int in the range of 1-96.

Params o_strPositionText:

The position text which will be the output. Will be a string of any of the well identifiers on a 96 well plate (i.e. A1-H12)

Returns:

A boolean of whether the conversion was successful

Return type:

Boolean

Plate96PositionNumberToPositionText(variable i_strPositionText, variable o_intPositionNumber)

This function converts position text to position number for a 96 well plate. E.g. if given A1 it will convert it to a 1, if given H1 it will convert it to a 8, etc.

Params i_strPositionText:

The position text to be converted. Will be a string of any of the well identifiers on a 96 well plate (i.e. A1-H12)

Params o_intPositionNumber:

The position number which will be the output. Any int in the range of 1-96.

Returns:

A boolean of whether the conversion was successful

Return type:

Boolean