NAME
MassSpec::CUtilities - Perl extension containing C utilities for use in mass spectrometry
SYNOPSIS
# MassSpec::CUtilities is an XS module so there's a chance that you or
# your target user might not get it to install cleanly on the target system;
# therefore it's recommended to make its presence optional and to offer
# slower-performing Perl equivalents where practical.
#
# Also note that this module uses a 19-letter amino alphabet rather than
# the traditional 20-letter alphabet, since the isobars Leucine(L) and
# Isoleucine(I) are represented instead by "X." Furthermore some portions
# of this module assume that their input peptides are internally in
# alphabetical order.
my $haveCUtilities;
if (eval 'require MassSpec::CUtilities') {
import MassSpec::CUtilities;
$haveCUtilities = 1;
} else {
$haveCUtilities = 0;
}
if ($haveCUtilities) {
my $candidate = MassSpec::CUtilities::encodeAsBitString("ACCGT");
my @shortPeptides = ("ACT","CCGM","ACCGTY","CCT");
my (@list,@answer);
foreach $_ (@shortPeptides) {
push @list, MassSpec::CUtilities::encodeAsBitString($_);
}
if (MassSpec::CUtilities::testManyBitStrings($candidate,\@shortPeptides,\@list,\@answer)) {
# should print "ACT" and "CCT" only
print "Matched: " . join(',',@answer) . "\n";
}
}
# see API documentation for other available subroutines
ABSTRACT
An eclectic mix of C utilities originally used in a mass spectrometry
denovo sequencing project at NIH. It includes a fast Huffman decoder
suitable (with minor modifications) for use with the CPAN module
Algorithm::Huffman, as well as a fast peptide mass calculator and methods for encoding peptides as products of prime numbers or as bitmaps.
DESCRIPTION
Stub documentation for MassSpec::CUtilities, created by h2xs. It looks like the author of the extension was negligent enough to leave the stub unedited.
Blah blah blah.
EXPORT
None by default.
SEE ALSO
Mention other useful documentation such as the documentation of related modules or operating system documentation (such as man pages in UNIX), or any relevant external documentation such as RFCs or standards.
If you have a mailing list set up for your module, mention it here.
If you have a web site set up for your module, mention it here.
AUTHOR
Jonathan Epstein, <Jonathan_Epstein@nih.gov>
COPYRIGHT AND LICENSE
Copyright 2005 by Jonathan Epstein
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself.