view mayachemtools/docs/modules/man3/FingerprintsFPFileIO.3 @ 0:73ae111cf86f draft

Uploaded
author deepakjadmin
date Wed, 20 Jan 2016 11:55:01 -0500
parents
children
line wrap: on
line source

.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.22)
.\"
.\" Standard preamble:
.\" ========================================================================
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Vb \" Begin verbatim text
.ft CW
.nf
.ne \\$1
..
.de Ve \" End verbatim text
.ft R
.fi
..
.\" Set up some character translations and predefined strings.  \*(-- will
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
.\" double quote, and \*(R" will give a right double quote.  \*(C+ will
.\" give a nicer C++.  Capital omega is used to do unbreakable dashes and
.\" therefore won't be available.  \*(C` and \*(C' expand to `' in nroff,
.\" nothing in troff, for use with C<>.
.tr \(*W-
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
.ie n \{\
.    ds -- \(*W-
.    ds PI pi
.    if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
.    if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\"  diablo 12 pitch
.    ds L" ""
.    ds R" ""
.    ds C` ""
.    ds C' ""
'br\}
.el\{\
.    ds -- \|\(em\|
.    ds PI \(*p
.    ds L" ``
.    ds R" ''
'br\}
.\"
.\" Escape single quotes in literal strings from groff's Unicode transform.
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\"
.\" If the F register is turned on, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD.  Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
.ie \nF \{\
.    de IX
.    tm Index:\\$1\t\\n%\t"\\$2"
..
.    nr % 0
.    rr F
.\}
.el \{\
.    de IX
..
.\}
.\"
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
.\" Fear.  Run.  Save yourself.  No user-serviceable parts.
.    \" fudge factors for nroff and troff
.if n \{\
.    ds #H 0
.    ds #V .8m
.    ds #F .3m
.    ds #[ \f1
.    ds #] \fP
.\}
.if t \{\
.    ds #H ((1u-(\\\\n(.fu%2u))*.13m)
.    ds #V .6m
.    ds #F 0
.    ds #[ \&
.    ds #] \&
.\}
.    \" simple accents for nroff and troff
.if n \{\
.    ds ' \&
.    ds ` \&
.    ds ^ \&
.    ds , \&
.    ds ~ ~
.    ds /
.\}
.if t \{\
.    ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
.    ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
.    ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
.    ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
.    ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
.    ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
.\}
.    \" troff and (daisy-wheel) nroff accents
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
.ds ae a\h'-(\w'a'u*4/10)'e
.ds Ae A\h'-(\w'A'u*4/10)'E
.    \" corrections for vroff
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
.    \" for low resolution devices (crt and lpr)
.if \n(.H>23 .if \n(.V>19 \
\{\
.    ds : e
.    ds 8 ss
.    ds o a
.    ds d- d\h'-1'\(ga
.    ds D- D\h'-1'\(hy
.    ds th \o'bp'
.    ds Th \o'LP'
.    ds ae ae
.    ds Ae AE
.\}
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
.IX Title "FINGERPRINTSFPFILEIO 1"
.TH FINGERPRINTSFPFILEIO 1 "2015-03-29" "perl v5.14.2" "MayaChemTools"
.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
FingerprintsFPFileIO
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
use FileIO::FingerprintsFPFileIO;
.PP
use FileIO::FingerprintsFPFileIO qw(:all);
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
\&\fBFingerprintsFPFileIO\fR class provides the following methods:
.PP
new, GetFingerprints, GetFingerprintsString, GetHeaderDataKeyValue,
GetHeaderDataKeys, GetHeaderDataKeysAndValues, GetPartialFingerprintsString,
GetRequiredHeaderDataKeys, GetRequiredHeaderDataKeysAndValues,
IsFingerprintsDataValid, IsFingerprintsFPFile, IsFingerprintsFileDataValid,
IsHeaderDataKeyPresent, Next, Read, SetBitStringFormat, SetBitsOrder,
SetCompoundID, SetDetailLevel, SetFingerprints, SetFingerprintsString,
SetFingerprintsStringMode, SetPartialFingerprintsString, SetVectorStringFormat,
WriteFingerprints, WriteFingerprintsString
.PP
The following methods can also be used as functions:
.PP
IsFingerprintsFPFile
.PP
\&\fBFingerprintsFPFileIO\fR class is derived from \fIFileIO\fR class and uses its methods to support
generic file related functionality.
.PP
The MayaChemTools fingerprints file (\s-1FP\s0) format with \fB.fpf\fR or \fB.fp\fR file extensions supports
two types of fingerprints data: fingerprints bit-vectors and fingerprints vectors.
.PP
Example of \s-1FP\s0 file format containing fingerprints bit-vector string data:
.PP
.Vb 10
\&    #
\&    # Package = MayaChemTools 7.4
\&    # ReleaseDate = Oct 21, 2010
\&    #
\&    # TimeStamp =  Mon Mar 7 15:14:01 2011
\&    #
\&    # FingerprintsStringType = FingerprintsBitVector
\&    #
\&    # Description = PathLengthBits:AtomicInvariantsAtomTypes:MinLength1:...
\&    # Size = 1024
\&    # BitStringFormat = HexadecimalString
\&    # BitsOrder = Ascending
\&    #
\&    Cmpd1 9c8460989ec8a49913991a6603130b0a19e8051c89184414953800cc21510...
\&    Cmpd2 000000249400840040100042011001001980410c000000001010088001120...
\&    ... ...
\&    ... ..
.Ve
.PP
Example of \s-1FP\s0 file format containing fingerprints vector string data:
.PP
.Vb 10
\&    #
\&    # Package = MayaChemTools 7.4
\&    # ReleaseDate = Oct 21, 2010
\&    #
\&    # TimeStamp =  Mon Mar 7 15:14:01 2011
\&    #
\&    # FingerprintsStringType = FingerprintsVector
\&    #
\&    # Description = PathLengthBits:AtomicInvariantsAtomTypes:MinLength1:...
\&    # VectorStringFormat = IDsAndValuesString
\&    # VectorValuesType = NumericalValues
\&    #
\&    Cmpd1 338;C F N O C:C C:N C=O CC CF CN CO C:C:C C:C:N C:CC C:CF C:CN C:
\&    N:C C:NC CC:N CC=O CCC CCN CCO CNC NC=O O=CO C:C:C:C C:C:C:N C:C:CC...;
\&    33 1 2 5 21 2 2 12 1 3 3 20 2 10 2 2 1 2 2 2 8 2 5 1 1 1 19 2 8 2 2 2 2
\&    6 2 2 2 2 2 2 2 2 3 2 2 1 4 1 5 1 1 18 6 2 2 1 2 10 2 1 2 1 2 2 2 2 ...
\&    Cmpd2 103;C N O C=N C=O CC CN CO CC=O CCC CCN CCO CNC N=CN NC=O NCN O=C
\&    O C CC=O CCCC CCCN CCCO CCNC CNC=N CNC=O CNCN CCCC=O CCCCC CCCCN CC...;
\&    15 4 4 1 2 13 5 2 2 15 5 3 2 2 1 1 1 2 17 7 6 5 1 1 1 2 15 8 5 7 2 2 2 2
\&    1 2 1 1 3 15 7 6 8 3 4 4 3 2 2 1 2 3 14 2 4 7 4 4 4 4 1 1 1 2 1 1 1 ...
\&    ... ...
\&    ... ...
.Ve
.PP
\&\fB\s-1FP\s0\fR file data format consists of two main sections: header section and fingerprints string
data section. The header section lines start with # and the first line not starting with # represents
the start of fingerprints string data section. The header section contains both the required and
optional information which is specified as key = value pairs. The required information
describes fingerprints bit-vector and vector strings and used to generate fingerprints objects;
the optional information is ignored during generation of fingerpints objects.
.PP
The key = value data specification in the header section and its processing follows these
rules:
.PP
.Vb 3
\&    o Leading and trailing spaces for key = value pairs are ignored
\&    o Key and value strings may contain spaces
\&    o Multiple key = value pairs on a single are delimited by semicolon
.Ve
.PP
The default optional header data section key = value pairs are:
.PP
.Vb 2
\&    # Package = MayaChemTools 7.4
\&    # ReleaseDate = Oct 21, 2010
.Ve
.PP
The \fBFingerprintsStringType\fR key is required data header key for both fingerprints bit-vector
and vector strings. Possible key values: \fIFingerprintsBitVector or FingerprintsVector\fR.
For example:
.PP
.Vb 1
\&    # FingerprintsStringType = FingerprintsBitVector
.Ve
.PP
The required data header keys for fingerprints bit-vector string are: \fBDescription, Size,
BitStringFormat, and BitsOrder\fR. Possible values for \fBBitStringFormat\fR: \fIHexadecimalString
or BinaryString\fR. Possible values for \fBBitsOrder\fR: \fIAscending or Descending\fR. The \fBDescription\fR
key contains information about various parameters used to generate fingerprints bit-vector
string. The \fBSize\fR corresponds to number of fingerprints bits and is always less than or equal
to number of bits in bit-vetor string which might contain extra bits at the end to round off the
size to make it multiple of 8. For example:
.PP
.Vb 4
\&    # Description = PathLengthBits:AtomicInvariantsAtomTypes:MinLength1:...
\&    # Size = 1024
\&    # BitStringFormat = HexadecimalString
\&    # BitsOrder = Ascending
.Ve
.PP
The required data header keys for fingerprints vector string are: \fBDescription, VectorStringFormat,
and VectorValuesType\fR.  Possible values for \fBVectorStringFormat\fR: \fIDsAndValuesString,
IDsAndValuesPairsString, ValuesAndIDsString, ValuesAndIDsPairsString or ValuesString\fR.
Possible values for \fBVectorValuesType\fR: \fINumericalValues, OrderedNumericalValues or
AlphaNumericalValues\fR. The \fBDescription\fR keys contains information various parameters used
to generate fingerprints vector string. For example:
.PP
.Vb 3
\&    # Description = PathLengthBits:AtomicInvariantsAtomTypes:MinLength1:...
\&    # VectorStringFormat = IDsAndValuesString
\&    # VectorValuesType = NumericalValues
.Ve
.PP
The fingerprints data section for fingerprints bit-vector string contains data in the following
format:
.PP
.Vb 3
\&    ... ...
\&    CmpdID FingerprintsPartialBitVectorString
\&    ... ...
.Ve
.PP
For example:
.PP
.Vb 3
\&    ... ...
\&    Cmpd1 9c8460989ec8a49913991a6603130b0a19e8051c89184414953800cc21510...
\&    ... ...
.Ve
.PP
The fingerprints data section for fingerprints vector string contains data in the following
format:
.PP
.Vb 3
\&    ... ...
\&    CmpdID Size;FingerprintsPartialVectorString
\&    ... ...
.Ve
.PP
For example:
.PP
.Vb 6
\&    ... ...
\&    Cmpd1 338;C F N O C:C C:N C=O CC CF CN CO C:C:C C:C:N C:CC C:CF C:CN C:
\&    N:C C:NC CC:N CC=O CCC CCN CCO CNC NC=O O=CO C:C:C:C C:C:C:N C:C:CC...;
\&    33 1 2 5 21 2 2 12 1 3 3 20 2 10 2 2 1 2 2 2 8 2 5 1 1 1 19 2 8 2 2 2 2
\&    6 2 2 2 2 2 2 2 2 3 2 2 1 4 1 5 1 1 18 6 2 2 1 2 10 2 1 2 1 2 2 2 2 ...
\&    ... ...
.Ve
.PP
Unlike fingerprints bit-vector string, \fISize\fR is specified for each partial fingerprints vector string:
It may change from molecule to molecule for same type of fingerprints.
.PP
Values IDs are optional for fingerprints vector string containing \fIOrderedNumericalValues or
AlphaNumericalValues\fR; however, they must be present for for \fINumericalValues\fR. Due to
various possible values for \fBVectorStringFormat\fR, the fingerprints data section for fingerprints
vector string supports following type of data formats:
.PP
.Vb 5
\&    CmpdID Size;ID1 ID2 ID3...;Value1 Value2 Value3...
\&    CmpdID Size;ID1 Value1 ID2 Value2 ID3 Value3... ...
\&    CmpdID Size;ValuesAndIDsString: Value1 Value2 Value3...;ID1 ID2 ID3...
\&    CmpdID Size;ValuesAndIDsPairsString: Value1 ID1 Value2 ID2 Value3 ID3... ...
\&    CmpdID Size;Value1 Value2 Value3 ...
.Ve
.PP
However, all the fingerprints vector string data present in \s-1FP\s0 file must correspond to only
one of the formats shown above; multiple data formats in the same file are not allowed.
.PP
The current release of MayaChemTools supports the following types of fingerprint
bit-vector and vector strings:
.PP
.Vb 6
\&    FingerprintsVector;AtomNeighborhoods:AtomicInvariantsAtomTypes:MinRadi
\&    us0:MaxRadius2;41;AlphaNumericalValues;ValuesString;NR0\-C.X1.BO1.H3\-AT
\&    C1:NR1\-C.X3.BO3.H1\-ATC1:NR2\-C.X1.BO1.H3\-ATC1:NR2\-C.X3.BO4\-ATC1 NR0\-C.X
\&    1.BO1.H3\-ATC1:NR1\-C.X3.BO3.H1\-ATC1:NR2\-C.X1.BO1.H3\-ATC1:NR2\-C.X3.BO4\-A
\&    TC1 NR0\-C.X2.BO2.H2\-ATC1:NR1\-C.X2.BO2.H2\-ATC1:NR1\-C.X3.BO3.H1\-ATC1:NR2
\&    \-C.X2.BO2.H2\-ATC1:NR2\-N.X3.BO3\-ATC1:NR2\-O.X1.BO1.H1\-ATC1 NR0\-C.X2.B...
\&
\&    FingerprintsVector;AtomTypesCount:AtomicInvariantsAtomTypes:ArbitraryS
\&    ize;10;NumericalValues;IDsAndValuesString;C.X1.BO1.H3 C.X2.BO2.H2 C.X2
\&    .BO3.H1 C.X3.BO3.H1 C.X3.BO4 F.X1.BO1 N.X2.BO2.H1 N.X3.BO3 O.X1.BO1.H1
\&    O.X1.BO2;2 4 14 3 10 1 1 1 3 2
\&
\&    FingerprintsVector;AtomTypesCount:SLogPAtomTypes:ArbitrarySize;16;Nume
\&    ricalValues;IDsAndValuesString;C1 C10 C11 C14 C18 C20 C21 C22 C5 CS F
\&    N11 N4 O10 O2 O9;5 1 1 1 14 4 2 1 2 2 1 1 1 1 3 1
\&
\&    FingerprintsVector;AtomTypesCount:SLogPAtomTypes:FixedSize;67;OrderedN
\&    umericalValues;IDsAndValuesString;C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C
\&    12 C13 C14 C15 C16 C17 C18 C19 C20 C21 C22 C23 C24 C25 C26 C27 CS N1 N
\&    2 N3 N4 N5 N6 N7 N8 N9 N10 N11 N12 N13 N14 NS O1 O2 O3 O4 O5 O6 O7 O8
\&    O9 O10 O11 O12 OS F Cl Br I Hal P S1 S2 S3 Me1 Me2;5 0 0 0 2 0 0 0 0 1
\&    1 0 0 1 0 0 0 14 0 4 2 1 0 0 0 0 0 2 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0...
\&
\&    FingerprintsVector;EStateIndicies:ArbitrarySize;11;NumericalValues;IDs
\&    AndValuesString;SaaCH SaasC SaasN SdO SdssC SsCH3 SsF SsOH SssCH2 SssN
\&    H SsssCH;24.778 4.387 1.993 25.023 \-1.435 3.975 14.006 29.759 \-0.073 3
\&    .024 \-2.270
\&
\&    FingerprintsVector;EStateIndicies:FixedSize;87;OrderedNumericalValues;
\&    ValuesString;0 0 0 0 0 0 0 3.975 0 \-0.073 0 0 24.778 \-2.270 0 0 \-1.435
\&    4.387 0 0 0 0 0 0 3.024 0 0 0 0 0 0 0 1.993 0 29.759 25.023 0 0 0 0 1
\&    4.006 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
\&    0 0 0 0 0 0 0 0 0 0 0 0 0 0
\&
\&    FingerprintsVector;ExtendedConnectivity:AtomicInvariantsAtomTypes:Radi
\&    us2;60;AlphaNumericalValues;ValuesString;73555770 333564680 352413391
\&    666191900 1001270906 1371674323 1481469939 1977749791 2006158649 21414
\&    08799 49532520 64643108 79385615 96062769 273726379 564565671 85514103
\&    5 906706094 988546669 1018231313 1032696425 1197507444 1331250018 1338
\&    532734 1455473691 1607485225 1609687129 1631614296 1670251330 17303...
\&
\&    FingerprintsVector;ExtendedConnectivityCount:AtomicInvariantsAtomTypes
\&    :Radius2;60;NumericalValues;IDsAndValuesString;73555770 333564680 3524
\&    13391 666191900 1001270906 1371674323 1481469939 1977749791 2006158649
\&    2141408799 49532520 64643108 79385615 96062769 273726379 564565671...;
\&    3 2 1 1 14 1 2 10 4 3 1 1 1 1 2 1 2 1 1 1 2 3 1 1 2 1 3 3 8 2 2 2 6 2
\&    1 2 1 1 2 1 1 1 2 1 1 2 1 2 1 1 1 1 1 1 1 1 1 2 1 1
\&
\&    FingerprintsBitVector;ExtendedConnectivityBits:AtomicInvariantsAtomTyp
\&    es:Radius2;1024;BinaryString;Ascending;0000000000000000000000000000100
\&    0000000001010000000110000011000000000000100000000000000000000000100001
\&    1000000110000000000000000000000000010011000000000000000000000000010000
\&    0000000000000000000000000010000000000000000001000000000000000000000000
\&    0000000000010000100001000000000000101000000000000000100000000000000...
\&
\&    FingerprintsVector;ExtendedConnectivity:FunctionalClassAtomTypes:Radiu
\&    s2;57;AlphaNumericalValues;ValuesString;24769214 508787397 850393286 8
\&    62102353 981185303 1231636850 1649386610 1941540674 263599683 32920567
\&    1 571109041 639579325 683993318 723853089 810600886 885767127 90326012
\&    7 958841485 981022393 1126908698 1152248391 1317567065 1421489994 1455
\&    632544 1557272891 1826413669 1983319256 2015750777 2029559552 20404...
\&
\&    FingerprintsVector;ExtendedConnectivity:EStateAtomTypes:Radius2;62;Alp
\&    haNumericalValues;ValuesString;25189973 528584866 662581668 671034184
\&    926543080 1347067490 1738510057 1759600920 2034425745 2097234755 21450
\&    44754 96779665 180364292 341712110 345278822 386540408 387387308 50430
\&    1706 617094135 771528807 957666640 997798220 1158349170 1291258082 134
\&    1138533 1395329837 1420277211 1479584608 1486476397 1487556246 1566...
\&
\&    FingerprintsBitVector;MACCSKeyBits;166;BinaryString;Ascending;00000000
\&    0000000000000000000000000000000001001000010010000000010010000000011100
\&    0100101010111100011011000100110110000011011110100110111111111111011111
\&    11111111111110111000
\&
\&    FingerprintsBitVector;MACCSKeyBits;322;BinaryString;Ascending;11101011
\&    1110011111100101111111000111101100110000000000000011100010000000000000
\&    0000000000000000000000000000000000000000000000101000000000000000000000
\&    0000000000000000000000000000000000000000000000000000000000000000000000
\&    0000000000000000000000000000000000000011000000000000000000000000000000
\&    0000000000000000000000000000000000000000
\&
\&    FingerprintsVector;MACCSKeyCount;166;OrderedNumericalValues;ValuesStri
\&    ng;0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
\&    0 0 0 0 0 0 0 1 0 0 3 0 0 0 0 4 0 0 2 0 0 0 0 0 0 0 0 2 0 0 2 0 0 0 0
\&    0 0 0 0 1 1 8 0 0 0 1 0 0 1 0 1 0 1 0 3 1 3 1 0 0 0 1 2 0 11 1 0 0 0
\&    5 0 0 1 2 0 1 1 0 0 0 0 0 1 1 0 1 1 1 1 0 4 0 0 1 1 0 4 6 1 1 1 2 1 1
\&    3 5 2 2 0 5 3 5 1 1 2 5 1 2 1 2 4 8 3 5 5 2 2 0 3 5 4 1
\&
\&    FingerprintsVector;MACCSKeyCount;322;OrderedNumericalValues;ValuesStri
\&    ng;14 8 2 0 2 0 4 4 2 1 4 0 0 2 5 10 5 2 1 0 0 2 0 5 13 3 28 5 5 3 0 0
\&    0 4 2 1 1 0 1 1 0 0 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 22 5 3 0 0 0 1 0
\&    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
\&    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 11 0 2 0 0 0 0 0 0 0 0 0
\&    0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ...
\&
\&    FingerprintsBitVector;PathLengthBits:AtomicInvariantsAtomTypes:MinLeng
\&    th1:MaxLength8;1024;BinaryString;Ascending;001000010011010101011000110
\&    0100010101011000101001011100110001000010001001101000001001001001001000
\&    0010110100000111001001000001001010100100100000000011000000101001011100
\&    0010000001000101010100000100111100110111011011011000000010110111001101
\&    0101100011000000010001000011000010100011101100001000001000100000000...
\&
\&    FingerprintsVector;PathLengthCount:AtomicInvariantsAtomTypes:MinLength
\&    1:MaxLength8;432;NumericalValues;IDsAndValuesPairsString;C.X1.BO1.H3 2
\&    C.X2.BO2.H2 4 C.X2.BO3.H1 14 C.X3.BO3.H1 3 C.X3.BO4 10 F.X1.BO1 1 N.X
\&    2.BO2.H1 1 N.X3.BO3 1 O.X1.BO1.H1 3 O.X1.BO2 2 C.X1.BO1.H3C.X3.BO3.H1
\&    2 C.X2.BO2.H2C.X2.BO2.H2 1 C.X2.BO2.H2C.X3.BO3.H1 4 C.X2.BO2.H2C.X3.BO
\&    4 1 C.X2.BO2.H2N.X3.BO3 1 C.X2.BO3.H1:C.X2.BO3.H1 10 C.X2.BO3.H1:C....
\&
\&    FingerprintsVector;PathLengthCount:MMFF94AtomTypes:MinLength1:MaxLengt
\&    h8;463;NumericalValues;IDsAndValuesPairsString;C5A 2 C5B 2 C=ON 1 CB 1
\&    8 COO 1 CR 9 F 1 N5 1 NC=O 1 O=CN 1 O=CO 1 OC=O 1 OR 2 C5A:C5B 2 C5A:N
\&    5 2 C5ACB 1 C5ACR 1 C5B:C5B 1 C5BC=ON 1 C5BCB 1 C=ON=O=CN 1 C=ONNC=O 1
\&    CB:CB 18 CBF 1 CBNC=O 1 COO=O=CO 1 COOCR 1 COOOC=O 1 CRCR 7 CRN5 1 CR
\&    OR 2 C5A:C5B:C5B 2 C5A:C5BC=ON 1 C5A:C5BCB 1 C5A:N5:C5A 1 C5A:N5CR ...
\&
\&    FingerprintsVector;TopologicalAtomPairs:AtomicInvariantsAtomTypes:MinD
\&    istance1:MaxDistance10;223;NumericalValues;IDsAndValuesString;C.X1.BO1
\&    .H3\-D1\-C.X3.BO3.H1 C.X2.BO2.H2\-D1\-C.X2.BO2.H2 C.X2.BO2.H2\-D1\-C.X3.BO3.
\&    H1 C.X2.BO2.H2\-D1\-C.X3.BO4 C.X2.BO2.H2\-D1\-N.X3.BO3 C.X2.BO3.H1\-D1\-...;
\&    2 1 4 1 1 10 8 1 2 6 1 2 2 1 2 1 2 2 1 2 1 5 1 10 12 2 2 1 2 1 9 1 3 1
\&    1 1 2 2 1 3 6 1 6 14 2 2 2 3 1 3 1 8 2 2 1 3 2 6 1 2 2 5 1 3 1 23 1...
\&
\&    FingerprintsVector;TopologicalAtomPairs:FunctionalClassAtomTypes:MinDi
\&    stance1:MaxDistance10;144;NumericalValues;IDsAndValuesString;Ar\-D1\-Ar
\&    Ar\-D1\-Ar.HBA Ar\-D1\-HBD Ar\-D1\-Hal Ar\-D1\-None Ar.HBA\-D1\-None HBA\-D1\-NI H
\&    BA\-D1\-None HBA.HBD\-D1\-NI HBA.HBD\-D1\-None HBD\-D1\-None NI\-D1\-None No...;
\&    23 2 1 1 2 1 1 1 1 2 1 1 7 28 3 1 3 2 8 2 1 1 1 5 1 5 24 3 3 4 2 13 4
\&    1 1 4 1 5 22 4 4 3 1 19 1 1 1 1 1 2 2 3 1 1 8 25 4 5 2 3 1 26 1 4 1 ...
\&
\&    FingerprintsVector;TopologicalAtomTorsions:AtomicInvariantsAtomTypes;3
\&    3;NumericalValues;IDsAndValuesString;C.X1.BO1.H3\-C.X3.BO3.H1\-C.X3.BO4\-
\&    C.X3.BO4 C.X1.BO1.H3\-C.X3.BO3.H1\-C.X3.BO4\-N.X3.BO3 C.X2.BO2.H2\-C.X2.BO
\&    2.H2\-C.X3.BO3.H1\-C.X2.BO2.H2 C.X2.BO2.H2\-C.X2.BO2.H2\-C.X3.BO3.H1\-O...;
\&    2 2 1 1 2 2 1 1 3 4 4 8 4 2 2 6 2 2 1 2 1 1 2 1 1 2 6 2 4 2 1 3 1
\&
\&    FingerprintsVector;TopologicalAtomTorsions:EStateAtomTypes;36;Numerica
\&    lValues;IDsAndValuesString;aaCH\-aaCH\-aaCH\-aaCH aaCH\-aaCH\-aaCH\-aasC aaC
\&    H\-aaCH\-aasC\-aaCH aaCH\-aaCH\-aasC\-aasC aaCH\-aaCH\-aasC\-sF aaCH\-aaCH\-aasC\-
\&    ssNH aaCH\-aasC\-aasC\-aasC aaCH\-aasC\-aasC\-aasN aaCH\-aasC\-ssNH\-dssC a...;
\&    4 4 8 4 2 2 6 2 2 2 4 3 2 1 3 3 2 2 2 1 2 1 1 1 2 1 1 1 1 1 1 1 2 1 1 2
\&
\&    FingerprintsVector;TopologicalAtomTriplets:AtomicInvariantsAtomTypes:M
\&    inDistance1:MaxDistance10;3096;NumericalValues;IDsAndValuesString;C.X1
\&    .BO1.H3\-D1\-C.X1.BO1.H3\-D1\-C.X3.BO3.H1\-D2 C.X1.BO1.H3\-D1\-C.X2.BO2.H2\-D1
\&    0\-C.X3.BO4\-D9 C.X1.BO1.H3\-D1\-C.X2.BO2.H2\-D3\-N.X3.BO3\-D4 C.X1.BO1.H3\-D1
\&    \-C.X2.BO2.H2\-D4\-C.X2.BO2.H2\-D5 C.X1.BO1.H3\-D1\-C.X2.BO2.H2\-D6\-C.X3....;
\&    1 2 2 2 2 2 2 2 8 8 4 8 4 4 2 2 2 2 4 2 2 2 4 2 2 2 2 1 2 2 4 4 4 2 2
\&    2 4 4 4 8 4 4 2 4 4 4 2 4 4 2 2 2 2 2 2 2 2 1 2 2 2 2 2 2 2 2 2 2 8...
\&
\&    FingerprintsVector;TopologicalAtomTriplets:SYBYLAtomTypes:MinDistance1
\&    :MaxDistance10;2332;NumericalValues;IDsAndValuesString;C.2\-D1\-C.2\-D9\-C
\&    .3\-D10 C.2\-D1\-C.2\-D9\-C.ar\-D10 C.2\-D1\-C.3\-D1\-C.3\-D2 C.2\-D1\-C.3\-D10\-C.3\-
\&    D9 C.2\-D1\-C.3\-D2\-C.3\-D3 C.2\-D1\-C.3\-D2\-C.ar\-D3 C.2\-D1\-C.3\-D3\-C.3\-D4 C.2
\&    \-D1\-C.3\-D3\-N.ar\-D4 C.2\-D1\-C.3\-D3\-O.3\-D2 C.2\-D1\-C.3\-D4\-C.3\-D5 C.2\-D1\-C.
\&    3\-D5\-C.3\-D6 C.2\-D1\-C.3\-D5\-O.3\-D4 C.2\-D1\-C.3\-D6\-C.3\-D7 C.2\-D1\-C.3\-D7...
\&
\&    FingerprintsVector;TopologicalPharmacophoreAtomPairs:ArbitrarySize:Min
\&    Distance1:MaxDistance10;54;NumericalValues;IDsAndValuesString;H\-D1\-H H
\&    \-D1\-NI HBA\-D1\-NI HBD\-D1\-NI H\-D2\-H H\-D2\-HBA H\-D2\-HBD HBA\-D2\-HBA HBA\-D2\-
\&    HBD H\-D3\-H H\-D3\-HBA H\-D3\-HBD H\-D3\-NI HBA\-D3\-NI HBD\-D3\-NI H\-D4\-H H\-D4\-H
\&    BA H\-D4\-HBD HBA\-D4\-HBA HBA\-D4\-HBD HBD\-D4\-HBD H\-D5\-H H\-D5\-HBA H\-D5\-...;
\&    18 1 2 1 22 12 8 1 2 18 6 3 1 1 1 22 13 6 5 7 2 28 9 5 1 1 1 36 16 10
\&    3 4 1 37 10 8 1 35 10 9 3 3 1 28 7 7 4 18 16 12 5 1 2 1
\&
\&    FingerprintsVector;TopologicalPharmacophoreAtomPairs:FixedSize:MinDist
\&    ance1:MaxDistance10;150;OrderedNumericalValues;ValuesString;18 0 0 1 0
\&    0 0 2 0 0 1 0 0 0 0 22 12 8 0 0 1 2 0 0 0 0 0 0 0 0 18 6 3 1 0 0 0 1
\&    0 0 1 0 0 0 0 22 13 6 0 0 5 7 0 0 2 0 0 0 0 0 28 9 5 1 0 0 0 1 0 0 1 0
\&    0 0 0 36 16 10 0 0 3 4 0 0 1 0 0 0 0 0 37 10 8 0 0 0 0 1 0 0 0 0 0 0
\&    0 35 10 9 0 0 3 3 0 0 1 0 0 0 0 0 28 7 7 4 0 0 0 0 0 0 0 0 0 0 0 18...
\&
\&    FingerprintsVector;TopologicalPharmacophoreAtomTriplets:ArbitrarySize:
\&    MinDistance1:MaxDistance10;696;NumericalValues;IDsAndValuesString;Ar1\-
\&    Ar1\-Ar1 Ar1\-Ar1\-H1 Ar1\-Ar1\-HBA1 Ar1\-Ar1\-HBD1 Ar1\-H1\-H1 Ar1\-H1\-HBA1 Ar1
\&    \-H1\-HBD1 Ar1\-HBA1\-HBD1 H1\-H1\-H1 H1\-H1\-HBA1 H1\-H1\-HBD1 H1\-HBA1\-HBA1 H1\-
\&    HBA1\-HBD1 H1\-HBA1\-NI1 H1\-HBD1\-NI1 HBA1\-HBA1\-NI1 HBA1\-HBD1\-NI1 Ar1\-...;
\&    46 106 8 3 83 11 4 1 21 5 3 1 2 2 1 1 1 100 101 18 11 145 132 26 14 23
\&    28 3 3 5 4 61 45 10 4 16 20 7 5 1 3 4 5 3 1 1 1 1 5 4 2 1 2 2 2 1 1 1
\&    119 123 24 15 185 202 41 25 22 17 3 5 85 95 18 11 23 17 3 1 1 6 4 ...
\&
\&    FingerprintsVector;TopologicalPharmacophoreAtomTriplets:FixedSize:MinD
\&    istance1:MaxDistance10;2692;OrderedNumericalValues;ValuesString;46 106
\&    8 3 0 0 83 11 4 0 0 0 1 0 0 0 0 0 0 0 0 21 5 3 0 0 1 2 2 0 0 1 0 0 0
\&    0 0 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 100 101 18 11 0 0 145 132 26
\&    14 0 0 23 28 3 3 0 0 5 4 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 61 45 10 4 0
\&    0 16 20 7 5 1 0 3 4 5 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 0 0 5 ...
.Ve
.SS "\s-1METHODS\s0"
.IX Subsection "METHODS"
.IP "\fBnew\fR" 4
.IX Item "new"
.Vb 1
\&    $NewFingerprintsFPFileIO = new FileIO::FingerprintsFPFileIO(%IOParameters);
.Ve
.Sp
Using specified \fIIOParameters\fR names and values hash, \fBnew\fR method creates a new
object and returns a reference to a newly created \fBFingerprintsFPFileIO\fR object. By default,
the following properties are initialized during \fIRead\fR mode:
.Sp
.Vb 6
\&    Name = \*(Aq\*(Aq;
\&    Mode = \*(AqRead\*(Aq;
\&    Status = 0;
\&    FingerprintsStringMode = \*(AqAutoDetect\*(Aq;
\&    ValidateData = 1;
\&    DetailLevel = 1;
.Ve
.Sp
During \fIWrite\fR mode, the following properties get initialize by default:
.Sp
.Vb 1
\&    FingerprintsStringMode = undef;
\&
\&    BitStringFormat = HexadecimalString;
\&    BitsOrder = Ascending;
\&
\&    VectorStringFormat = NumericalValuesString or ValuesString;
.Ve
.Sp
Examples:
.Sp
.Vb 5
\&    $NewFingerprintsFPFileIO = new FileIO::FingerprintsFPFileIO(
\&                               \*(AqName\*(Aq => \*(AqSample.fpf\*(Aq,
\&                               \*(AqMode\*(Aq => \*(AqRead\*(Aq,
\&                               \*(AqFingerprintsStringMode\*(Aq =>
\&                                       \*(AqAutoDetect\*(Aq);
\&
\&    $NewFingerprintsFPFileIO = new FileIO::FingerprintsFPFileIO(
\&                               \*(AqName\*(Aq => \*(AqSample.fpf\*(Aq,
\&                               \*(AqMode\*(Aq => \*(AqWrite\*(Aq,
\&                               \*(AqFingerprintsStringMode\*(Aq =>
\&                                       \*(AqFingerprintsBitVectorString\*(Aq,
\&                               \*(AqOverwrite\*(Aq => 1,
\&                               \*(AqBitStringFormat\*(Aq => \*(AqHexadecimalString\*(Aq,
\&                               \*(AqBitsOrder\*(Aq => \*(AqAscending\*(Aq);
\&
\&    $NewFingerprintsFPFileIO = new FileIO::FingerprintsFPFileIO(
\&                               \*(AqName\*(Aq => \*(AqSample.fp\*(Aq,
\&                               \*(AqMode\*(Aq => \*(AqWrite\*(Aq,
\&                               \*(AqFingerprintsStringMode\*(Aq =>
\&                                       \*(AqFingerprintsVectorString\*(Aq,
\&                               \*(AqOverwrite\*(Aq => 1,
\&                               \*(AqVectorStringFormat\*(Aq => \*(AqIDsAndValuesString\*(Aq);
.Ve
.IP "\fBGetFingerprints\fR" 4
.IX Item "GetFingerprints"
.Vb 1
\&    $FingerprintsObject = $FingerprintsFPFileIO\->GetFingerprints();
.Ve
.Sp
Returns \fBFingerprintsObject\fR generated for current data line using fingerprints bit-vector
or vector string data. The fingerprints object corresponds to any of the supported fingerprints
such as PathLengthFingerprints, ExtendedConnectivity, and so on.
.IP "\fBGetFingerprintsString\fR" 4
.IX Item "GetFingerprintsString"
.Vb 1
\&    $FingerprintsString = $FingerprintsFPFileIO\->GetFingerprintsString();
.Ve
.Sp
Returns \fBFingerprintsString\fR for current data line.
.IP "\fBGetHeaderDataKeyValue\fR" 4
.IX Item "GetHeaderDataKeyValue"
.Vb 1
\&    $KeyValue = $FingerprintsFPFileIO\->GetHeaderDataKeyValue($Key);
.Ve
.Sp
Returns \fBKeyValue\fR of a data header \fIKey\fR.
.IP "\fBGetHeaderDataKeys\fR" 4
.IX Item "GetHeaderDataKeys"
.Vb 2
\&    @Keys = $FingerprintsFPFileIO\->GetHeaderDataKeys();
\&    $NumOfKeys = $FingerprintsFPFileIO\->GetHeaderDataKeys();
.Ve
.Sp
Returns an array of data header \fBKeys\fR retrieved from data header section of fingerprints
file. In scalar context, it returns number of keys.
.IP "\fBGetHeaderDataKeysAndValues\fR" 4
.IX Item "GetHeaderDataKeysAndValues"
.Vb 1
\&    %KeysAndValues = $FingerprintsFPFileIO\->GetHeaderDataKeysAndValues();
.Ve
.Sp
Returns a hash of data header keys and values retrieved from data header section of fingerprints
file.
.IP "\fBGetPartialFingerprintsString\fR" 4
.IX Item "GetPartialFingerprintsString"
.Vb 1
\&    $FingerprintsString = $FingerprintsFPFileIO\->GetPartialFingerprintsString();
.Ve
.Sp
Returns partial \fBFingerprintsString\fR for current data line. It corresponds to fingerprints string
specified present in a line.
.IP "\fBGetRequiredHeaderDataKeys\fR" 4
.IX Item "GetRequiredHeaderDataKeys"
.Vb 2
\&    @Keys = $FingerprintsFPFileIO\->GetRequiredHeaderDataKeys();
\&    $NumOfKeys = $FingerprintsFPFileIO\->GetRequiredHeaderDataKeys();
.Ve
.Sp
Returns an array of required data header \fBKeys\fR for a fingerprints file containing bit-vector or
vector strings data. In scalar context, it returns number of keys.
.IP "\fBGetRequiredHeaderDataKeysAndValues\fR" 4
.IX Item "GetRequiredHeaderDataKeysAndValues"
.Vb 2
\&    %KeysAndValues = $FingerprintsFPFileIO\->
\&                     GetRequiredHeaderDataKeysAndValues();
.Ve
.Sp
Returns a hash of required data header keys and values for a fingerprints file containing bit-vector or
vector strings data
.IP "\fBIsFingerprintsDataValid\fR" 4
.IX Item "IsFingerprintsDataValid"
.Vb 1
\&    $Status = $FingerprintsFPFileIO\->IsFingerprintsDataValid();
.Ve
.Sp
Returns 1 or 0 based on whether \fBFingerprintsObject\fR is valid.
.IP "\fBIsFingerprintsFPFile\fR" 4
.IX Item "IsFingerprintsFPFile"
.Vb 2
\&    $Status = $FingerprintsFPFileIO\->IsFingerprintsFPFile($FileName);
\&    $Status = FileIO::FingerprintsFPFileIO::IsFingerprintsFPFile($FileName);
.Ve
.Sp
Returns 1 or 0 based on whether \fIFileName\fR is a \s-1FP\s0 file.
.IP "\fBIsFingerprintsFileDataValid\fR" 4
.IX Item "IsFingerprintsFileDataValid"
.Vb 1
\&    $Status = $FingerprintsFPFileIO\->IsFingerprintsFileDataValid();
.Ve
.Sp
Returns 1 or 0 based on whether fingerprints file contains valid fingerprints data.
.IP "\fBIsHeaderDataKeyPresent\fR" 4
.IX Item "IsHeaderDataKeyPresent"
.Vb 1
\&    $Status = $FingerprintsFPFileIO\->IsHeaderDataKeyPresent($Key);
.Ve
.Sp
Returns 1 or 0 based on whether data header \fIKey\fR is present in data header
section of a \s-1FP\s0 file.
.IP "\fBNext or Read\fR" 4
.IX Item "Next or Read"
.Vb 2
\&    $FingerprintsFPFileIO = $FingerprintsFPFileIO\->Next();
\&    $FingerprintsFPFileIO = $FingerprintsFPFileIO\->Read();
.Ve
.Sp
Reads next available fingerprints line in \s-1FP\s0 file, processes the data, generates appropriate fingerprints
object, and returns \fBFingerprintsFPFileIO\fR. The generated fingerprints object is available using
method \fBGetFingerprints\fR.
.IP "\fBSetBitStringFormat\fR" 4
.IX Item "SetBitStringFormat"
.Vb 1
\&    $FingerprintsFPFileIO\->SetBitStringFormat($Format);
.Ve
.Sp
Sets bit string \fIFormat\fR for fingerprints bit-vector string data in a \s-1FP\s0 file and returns \fBFingerprintsFPFileIO\fR.
Possible values for \fBBitStringFormat\fR: \fIBinaryString or HexadecimalString\fR.
.IP "\fBSetBitsOrder\fR" 4
.IX Item "SetBitsOrder"
.Vb 1
\&    $FingerprintsFPFileIO\->SetBitsOrder($BitsOrder);
.Ve
.Sp
Sets \fIBitsOrder\fR for fingerprints bit-vector string data in a \s-1FP\s0 file and returns \fBFingerprintsFPFileIO\fR.
Possible values for \fBBitsOrder\fR: \fIAscending or Descending\fR.
.IP "\fBSetCompoundID\fR" 4
.IX Item "SetCompoundID"
.Vb 1
\&    $FingerprintsFPFileIO\->SetCompoundID($ID);
.Ve
.Sp
Sets compound \s-1ID\s0 for current data line and returns \fBFingerprintsFPFileIO\fR. Spaces are not allowed
in compound IDs.
.IP "\fBSetDetailLevel\fR" 4
.IX Item "SetDetailLevel"
.Vb 1
\&    $FingerprintsFPFileIO\->SetDetailLevel($Level);
.Ve
.Sp
Sets details \fILevel\fR for generating diagnostics messages during \s-1FP\s0 file processing and returns
\&\fBFingerprintsFPFileIO\fR. Possible values: \fIPositive integers\fR.
.IP "\fBSetFingerprints\fR" 4
.IX Item "SetFingerprints"
.Vb 1
\&    $FingerprintsFPFileIO\->SetFingerprints($FingerprintsObject);
.Ve
.Sp
Sets \fIFingerprintsObject\fR for current data line and returns \fBFingerprintsFPFileIO\fR.
.IP "\fBSetFingerprintsString\fR" 4
.IX Item "SetFingerprintsString"
.Vb 1
\&    $FingerprintsFPFileIO\->SetFingerprintsString($FingerprintsString);
.Ve
.Sp
Sets \fIFingerprintsString\fR for current data line and returns \fBFingerprintsFPFileIO\fR.
.IP "\fBSetFingerprintsStringMode\fR" 4
.IX Item "SetFingerprintsStringMode"
.Vb 1
\&    $FingerprintsFPFileIO\->SetFingerprintsStringMode($Mode);
.Ve
.Sp
Sets \fIFingerprintsStringMode\fR for \s-1FP\s0 file and returns \fBFingerprintsFPFileIO\fR.
Possible values: \fIAutoDetect, FingerprintsBitVectorString, or FingerprintsVectorString\fR
.IP "\fBSetPartialFingerprintsString\fR" 4
.IX Item "SetPartialFingerprintsString"
.Vb 1
\&    $FingerprintsFPFileIO\->SetPartialFingerprintsString($PartialString);
.Ve
.Sp
Sets \fIPartialFingerprintsString\fR for current data line and returns \fBFingerprintsFPFileIO\fR.
.IP "\fBSetVectorStringFormat\fR" 4
.IX Item "SetVectorStringFormat"
.Vb 1
\&    $FingerprintsFPFileIO\->SetVectorStringFormat($Format);
.Ve
.Sp
Sets \fIVectorStringFormat\fR for \s-1FP\s0 file and returns \fBFingerprintsFPFileIO\fR. Possible values:
\&\fIIDsAndValuesString, IDsAndValuesPairsString, ValuesAndIDsString, ValuesAndIDsPairsString\fR.
.IP "\fBWriteFingerprints\fR" 4
.IX Item "WriteFingerprints"
.Vb 2
\&    $FingerprintsFPFileIO\->WriteFingerprints($FingerprintsObject,
\&                                            $CompoundID);
.Ve
.Sp
Writes fingerprints string generated from \fIFingerprintsObject\fR object and other data including
\&\fICompoundID\fR to \s-1FP\s0 file and returns \fBFingerprintsFPFileIO\fR.
.IP "\fBWriteFingerprintsString\fR" 4
.IX Item "WriteFingerprintsString"
.Vb 2
\&    $FingerprintsFPFileIO\->WriteFingerprints($FingerprintsString,
\&                                            $CompoundID);
.Ve
.Sp
Writes \fIFingerprintsString\fR and other data including \fICompoundID\fR to \s-1FP\s0 file and returns
\&\fBFingerprintsFPFileIO\fR.
.Sp
Caveats:
.Sp
.Vb 5
\&    o FingerprintsStringMode, BitStringFormat, BitsOrder, VectorStringFormat
\&      values are ignored during writing of fingerprints and it\*(Aqs written to
\&      the file as it is.
\&    o FingerprintsString is a regular fingerprints string as oppose to a
\&      partial fingerprints string.
.Ve
.SH "AUTHOR"
.IX Header "AUTHOR"
Manish Sud <msud@san.rr.com>
.SH "SEE ALSO"
.IX Header "SEE ALSO"
FingerprintsSDFileIO.pm, FingerprintsTextFileIO.pm
.SH "COPYRIGHT"
.IX Header "COPYRIGHT"
Copyright (C) 2015 Manish Sud. All rights reserved.
.PP
This file is part of MayaChemTools.
.PP
MayaChemTools is free software; you can redistribute it and/or modify it under
the terms of the \s-1GNU\s0 Lesser General Public License as published by the Free
Software Foundation; either version 3 of the License, or (at your option)
any later version.