diff mayachemtools/docs/modules/html/FingerprintsFPFileIO.html @ 0:73ae111cf86f draft

Uploaded
author deepakjadmin
date Wed, 20 Jan 2016 11:55:01 -0500
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mayachemtools/docs/modules/html/FingerprintsFPFileIO.html	Wed Jan 20 11:55:01 2016 -0500
@@ -0,0 +1,616 @@
+<html>
+<head>
+<title>MayaChemTools:Documentation:FileIO::FingerprintsFPFileIO.pm</title>
+<meta http-equiv="content-type" content="text/html;charset=utf-8">
+<link rel="stylesheet" type="text/css" href="../../css/MayaChemTools.css">
+</head>
+<body leftmargin="20" rightmargin="20" topmargin="10" bottommargin="10">
+<br/>
+<center>
+<a href="http://www.mayachemtools.org" title="MayaChemTools Home"><img src="../../images/MayaChemToolsLogo.gif" border="0" alt="MayaChemTools"></a>
+</center>
+<br/>
+<div class="DocNav">
+<table width="100%" border=0 cellpadding=0 cellspacing=2>
+<tr align="left" valign="top"><td width="33%" align="left"><a href="./FileIO.html" title="FileIO.html">Previous</a>&nbsp;&nbsp;<a href="./index.html" title="Table of Contents">TOC</a>&nbsp;&nbsp;<a href="./FingerprintsSDFileIO.html" title="FingerprintsSDFileIO.html">Next</a></td><td width="34%" align="middle"><strong>FileIO::FingerprintsFPFileIO.pm</strong></td><td width="33%" align="right"><a href="././code/FingerprintsFPFileIO.html" title="View source code">Code</a>&nbsp;|&nbsp;<a href="./../pdf/FingerprintsFPFileIO.pdf" title="PDF US Letter Size">PDF</a>&nbsp;|&nbsp;<a href="./../pdfgreen/FingerprintsFPFileIO.pdf" title="PDF US Letter Size with narrow margins: www.changethemargins.com">PDFGreen</a>&nbsp;|&nbsp;<a href="./../pdfa4/FingerprintsFPFileIO.pdf" title="PDF A4 Size">PDFA4</a>&nbsp;|&nbsp;<a href="./../pdfa4green/FingerprintsFPFileIO.pdf" title="PDF A4 Size with narrow margins: www.changethemargins.com">PDFA4Green</a></td></tr>
+</table>
+</div>
+<p>
+</p>
+<h2>NAME</h2>
+<p>FingerprintsFPFileIO</p>
+<p>
+</p>
+<h2>SYNOPSIS</h2>
+<p>use FileIO::FingerprintsFPFileIO;</p>
+<p>use FileIO::FingerprintsFPFileIO qw(:all);</p>
+<p>
+</p>
+<h2>DESCRIPTION</h2>
+<p><strong>FingerprintsFPFileIO</strong> class provides the following methods:</p>
+<p> <a href="#new">new</a>, <a href="#getfingerprints">GetFingerprints</a>, <a href="#getfingerprintsstring">GetFingerprintsString</a>, <a href="#getheaderdatakeyvalue">GetHeaderDataKeyValue</a>
+, <a href="#getheaderdatakeys">GetHeaderDataKeys</a>, <a href="#getheaderdatakeysandvalues">GetHeaderDataKeysAndValues</a>, <a href="#getpartialfingerprintsstring">GetPartialFingerprintsString</a>
+, <a href="#getrequiredheaderdatakeys">GetRequiredHeaderDataKeys</a>, <a href="#getrequiredheaderdatakeysandvalues">GetRequiredHeaderDataKeysAndValues</a>
+, <a href="#isfingerprintsdatavalid">IsFingerprintsDataValid</a>, <a href="#isfingerprintsfpfile">IsFingerprintsFPFile</a>, <a href="#isfingerprintsfiledatavalid">IsFingerprintsFileDataValid</a>
+, <a href="#isheaderdatakeypresent">IsHeaderDataKeyPresent</a>, <a href="#next">Next</a>, <a href="#read">Read</a>, <a href="#setbitstringformat">SetBitStringFormat</a>, <a href="#setbitsorder">SetBitsOrder</a>
+, <a href="#setcompoundid">SetCompoundID</a>, <a href="#setdetaillevel">SetDetailLevel</a>, <a href="#setfingerprints">SetFingerprints</a>, <a href="#setfingerprintsstring">SetFingerprintsString</a>
+, <a href="#setfingerprintsstringmode">SetFingerprintsStringMode</a>, <a href="#setpartialfingerprintsstring">SetPartialFingerprintsString</a>, <a href="#setvectorstringformat">SetVectorStringFormat</a>
+, <a href="#writefingerprints">WriteFingerprints</a>, <a href="#writefingerprintsstring">WriteFingerprintsString</a>
+</p><p>The following methods can also be used as functions:</p>
+<p>IsFingerprintsFPFile</p>
+<p><strong>FingerprintsFPFileIO</strong> class is derived from <em>FileIO</em> class and uses its methods to support
+generic file related functionality.</p>
+<p>The MayaChemTools fingerprints file (FP) format with <strong>.fpf</strong> or <strong>.fp</strong> file extensions supports
+two types of fingerprints data: fingerprints bit-vectors and fingerprints vectors.</p>
+<p>Example of FP file format containing fingerprints bit-vector string data:</p>
+<div class="OptionsBox">
+    #
+<br/>    # Package = MayaChemTools 7.4
+<br/>    # ReleaseDate = Oct 21, 2010
+<br/>    #
+<br/>    # TimeStamp =  Mon Mar 7 15:14:01 2011
+<br/>    #
+<br/>    # FingerprintsStringType = FingerprintsBitVector
+<br/>    #
+<br/>    # Description = PathLengthBits:AtomicInvariantsAtomTypes:MinLength1:...
+<br/>    # Size = 1024
+<br/>    # BitStringFormat = HexadecimalString
+<br/>    # BitsOrder = Ascending
+<br/>    #
+<br/>    Cmpd1 9c8460989ec8a49913991a6603130b0a19e8051c89184414953800cc21510...
+<br/>    Cmpd2 000000249400840040100042011001001980410c000000001010088001120...
+<br/>    ... ...
+<br/>    ... ..</div>
+<p>Example of FP file format containing fingerprints vector string data:</p>
+<div class="OptionsBox">
+    #
+<br/>    # Package = MayaChemTools 7.4
+<br/>    # ReleaseDate = Oct 21, 2010
+<br/>    #
+<br/>    # TimeStamp =  Mon Mar 7 15:14:01 2011
+<br/>    #
+<br/>    # FingerprintsStringType = FingerprintsVector
+<br/>    #
+<br/>    # Description = PathLengthBits:AtomicInvariantsAtomTypes:MinLength1:...
+<br/>    # VectorStringFormat = IDsAndValuesString
+<br/>    # VectorValuesType = NumericalValues
+<br/>    #
+<br/>    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:
+<br/>    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...;
+<br/>    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
+<br/>    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 ...
+<br/>    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
+<br/>    O C CC=O CCCC CCCN CCCO CCNC CNC=N CNC=O CNCN CCCC=O CCCCC CCCCN CC...;
+<br/>    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
+<br/>    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 ...
+<br/>    ... ...
+<br/>    ... ...</div>
+<p><strong>FP</strong> 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.</p>
+<p>The key = value data specification in the header section and its processing follows these
+rules:</p>
+<div class="OptionsBox">
+    o Leading and trailing spaces for key = value pairs are ignored
+<br/>    o Key and value strings may contain spaces
+<br/>    o Multiple key = value pairs on a single are delimited by semicolon</div>
+<p>The default optional header data section key = value pairs are:</p>
+<div class="OptionsBox">
+    # Package = MayaChemTools 7.4
+<br/>    # ReleaseDate = Oct 21, 2010</div>
+<p>The <strong>FingerprintsStringType</strong> key is required data header key for both fingerprints bit-vector
+and vector strings. Possible key values: <em>FingerprintsBitVector or FingerprintsVector</em>.
+For example:</p>
+<div class="OptionsBox">
+    # FingerprintsStringType = FingerprintsBitVector</div>
+<p>The required data header keys for fingerprints bit-vector string are: <strong>Description, Size,
+BitStringFormat, and BitsOrder</strong>. Possible values for <strong>BitStringFormat</strong>: <em>HexadecimalString
+or BinaryString</em>. Possible values for <strong>BitsOrder</strong>: <em>Ascending or Descending</em>. The <strong>Description</strong>
+key contains information about various parameters used to generate fingerprints bit-vector
+string. The <strong>Size</strong> 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:</p>
+<div class="OptionsBox">
+    # Description = PathLengthBits:AtomicInvariantsAtomTypes:MinLength1:...
+<br/>    # Size = 1024
+<br/>    # BitStringFormat = HexadecimalString
+<br/>    # BitsOrder = Ascending</div>
+<p>The required data header keys for fingerprints vector string are: <strong>Description, VectorStringFormat,
+and VectorValuesType</strong>.  Possible values for <strong>VectorStringFormat</strong>: <em>DsAndValuesString,
+IDsAndValuesPairsString, ValuesAndIDsString, ValuesAndIDsPairsString or ValuesString</em>.
+Possible values for <strong>VectorValuesType</strong>: <em>NumericalValues, OrderedNumericalValues or
+AlphaNumericalValues</em>. The <strong>Description</strong> keys contains information various parameters used
+to generate fingerprints vector string. For example:</p>
+<div class="OptionsBox">
+    # Description = PathLengthBits:AtomicInvariantsAtomTypes:MinLength1:...
+<br/>    # VectorStringFormat = IDsAndValuesString
+<br/>    # VectorValuesType = NumericalValues</div>
+<p>The fingerprints data section for fingerprints bit-vector string contains data in the following
+format:</p>
+<div class="OptionsBox">
+    ... ...
+<br/>    CmpdID FingerprintsPartialBitVectorString
+<br/>    ... ...</div>
+<p>For example:</p>
+<div class="OptionsBox">
+    ... ...
+<br/>    Cmpd1 9c8460989ec8a49913991a6603130b0a19e8051c89184414953800cc21510...
+<br/>    ... ...</div>
+<p>The fingerprints data section for fingerprints vector string contains data in the following
+format:</p>
+<div class="OptionsBox">
+    ... ...
+<br/>    CmpdID Size;FingerprintsPartialVectorString
+<br/>    ... ...</div>
+<p>For example:</p>
+<div class="OptionsBox">
+    ... ...
+<br/>    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:
+<br/>    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...;
+<br/>    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
+<br/>    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 ...
+<br/>    ... ...</div>
+<p>Unlike fingerprints bit-vector string, <em>Size</em> is specified for each partial fingerprints vector string:
+It may change from molecule to molecule for same type of fingerprints.</p>
+<p>Values IDs are optional for fingerprints vector string containing <em>OrderedNumericalValues or
+AlphaNumericalValues</em>; however, they must be present for for <em>NumericalValues</em>. Due to
+various possible values for <strong>VectorStringFormat</strong>, the fingerprints data section for fingerprints
+vector string supports following type of data formats:</p>
+<div class="OptionsBox">
+    CmpdID Size;ID1 ID2 ID3...;Value1 Value2 Value3...
+<br/>    CmpdID Size;ID1 Value1 ID2 Value2 ID3 Value3... ...
+<br/>    CmpdID Size;ValuesAndIDsString: Value1 Value2 Value3...;ID1 ID2 ID3...
+<br/>    CmpdID Size;ValuesAndIDsPairsString: Value1 ID1 Value2 ID2 Value3 ID3... ...
+<br/>    CmpdID Size;Value1 Value2 Value3 ...</div>
+<p>However, all the fingerprints vector string data present in FP file must correspond to only
+one of the formats shown above; multiple data formats in the same file are not allowed.</p>
+<p>The current release of MayaChemTools supports the following types of fingerprint
+bit-vector and vector strings:</p>
+<div class="OptionsBox">
+    FingerprintsVector;AtomNeighborhoods:AtomicInvariantsAtomTypes:MinRadi
+<br/>    us0:MaxRadius2;41;AlphaNumericalValues;ValuesString;NR0-C.X1.BO1.H3-AT
+<br/>    C1:NR1-C.X3.BO3.H1-ATC1:NR2-C.X1.BO1.H3-ATC1:NR2-C.X3.BO4-ATC1 NR0-C.X
+<br/>    1.BO1.H3-ATC1:NR1-C.X3.BO3.H1-ATC1:NR2-C.X1.BO1.H3-ATC1:NR2-C.X3.BO4-A
+<br/>    TC1 NR0-C.X2.BO2.H2-ATC1:NR1-C.X2.BO2.H2-ATC1:NR1-C.X3.BO3.H1-ATC1:NR2
+<br/>    -C.X2.BO2.H2-ATC1:NR2-N.X3.BO3-ATC1:NR2-O.X1.BO1.H1-ATC1 NR0-C.X2.B...</div>
+<div class="OptionsBox">
+    FingerprintsVector;AtomTypesCount:AtomicInvariantsAtomTypes:ArbitraryS
+<br/>    ize;10;NumericalValues;IDsAndValuesString;C.X1.BO1.H3 C.X2.BO2.H2 C.X2
+<br/>    .BO3.H1 C.X3.BO3.H1 C.X3.BO4 F.X1.BO1 N.X2.BO2.H1 N.X3.BO3 O.X1.BO1.H1
+<br/>    O.X1.BO2;2 4 14 3 10 1 1 1 3 2</div>
+<div class="OptionsBox">
+    FingerprintsVector;AtomTypesCount:SLogPAtomTypes:ArbitrarySize;16;Nume
+<br/>    ricalValues;IDsAndValuesString;C1 C10 C11 C14 C18 C20 C21 C22 C5 CS F
+<br/>    N11 N4 O10 O2 O9;5 1 1 1 14 4 2 1 2 2 1 1 1 1 3 1</div>
+<div class="OptionsBox">
+    FingerprintsVector;AtomTypesCount:SLogPAtomTypes:FixedSize;67;OrderedN
+<br/>    umericalValues;IDsAndValuesString;C1 C2 C3 C4 C5 C6 C7 C8 C9 C10 C11 C
+<br/>    12 C13 C14 C15 C16 C17 C18 C19 C20 C21 C22 C23 C24 C25 C26 C27 CS N1 N
+<br/>    2 N3 N4 N5 N6 N7 N8 N9 N10 N11 N12 N13 N14 NS O1 O2 O3 O4 O5 O6 O7 O8
+<br/>    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
+<br/>    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...</div>
+<div class="OptionsBox">
+    FingerprintsVector;EStateIndicies:ArbitrarySize;11;NumericalValues;IDs
+<br/>    AndValuesString;SaaCH SaasC SaasN SdO SdssC SsCH3 SsF SsOH SssCH2 SssN
+<br/>    H SsssCH;24.778 4.387 1.993 25.023 -1.435 3.975 14.006 29.759 -0.073 3
+<br/>    .024 -2.270</div>
+<div class="OptionsBox">
+    FingerprintsVector;EStateIndicies:FixedSize;87;OrderedNumericalValues;
+<br/>    ValuesString;0 0 0 0 0 0 0 3.975 0 -0.073 0 0 24.778 -2.270 0 0 -1.435
+<br/>    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
+<br/>    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
+<br/>    0 0 0 0 0 0 0 0 0 0 0 0 0 0</div>
+<div class="OptionsBox">
+    FingerprintsVector;ExtendedConnectivity:AtomicInvariantsAtomTypes:Radi
+<br/>    us2;60;AlphaNumericalValues;ValuesString;73555770 333564680 352413391
+<br/>    666191900 1001270906 1371674323 1481469939 1977749791 2006158649 21414
+<br/>    08799 49532520 64643108 79385615 96062769 273726379 564565671 85514103
+<br/>    5 906706094 988546669 1018231313 1032696425 1197507444 1331250018 1338
+<br/>    532734 1455473691 1607485225 1609687129 1631614296 1670251330 17303...</div>
+<div class="OptionsBox">
+    FingerprintsVector;ExtendedConnectivityCount:AtomicInvariantsAtomTypes
+<br/>    :Radius2;60;NumericalValues;IDsAndValuesString;73555770 333564680 3524
+<br/>    13391 666191900 1001270906 1371674323 1481469939 1977749791 2006158649
+<br/>    2141408799 49532520 64643108 79385615 96062769 273726379 564565671...;
+<br/>    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
+<br/>    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</div>
+<div class="OptionsBox">
+    FingerprintsBitVector;ExtendedConnectivityBits:AtomicInvariantsAtomTyp
+<br/>    es:Radius2;1024;BinaryString;Ascending;0000000000000000000000000000100
+<br/>    0000000001010000000110000011000000000000100000000000000000000000100001
+<br/>    1000000110000000000000000000000000010011000000000000000000000000010000
+<br/>    0000000000000000000000000010000000000000000001000000000000000000000000
+<br/>    0000000000010000100001000000000000101000000000000000100000000000000...</div>
+<div class="OptionsBox">
+    FingerprintsVector;ExtendedConnectivity:FunctionalClassAtomTypes:Radiu
+<br/>    s2;57;AlphaNumericalValues;ValuesString;24769214 508787397 850393286 8
+<br/>    62102353 981185303 1231636850 1649386610 1941540674 263599683 32920567
+<br/>    1 571109041 639579325 683993318 723853089 810600886 885767127 90326012
+<br/>    7 958841485 981022393 1126908698 1152248391 1317567065 1421489994 1455
+<br/>    632544 1557272891 1826413669 1983319256 2015750777 2029559552 20404...</div>
+<div class="OptionsBox">
+    FingerprintsVector;ExtendedConnectivity:EStateAtomTypes:Radius2;62;Alp
+<br/>    haNumericalValues;ValuesString;25189973 528584866 662581668 671034184
+<br/>    926543080 1347067490 1738510057 1759600920 2034425745 2097234755 21450
+<br/>    44754 96779665 180364292 341712110 345278822 386540408 387387308 50430
+<br/>    1706 617094135 771528807 957666640 997798220 1158349170 1291258082 134
+<br/>    1138533 1395329837 1420277211 1479584608 1486476397 1487556246 1566...</div>
+<div class="OptionsBox">
+    FingerprintsBitVector;MACCSKeyBits;166;BinaryString;Ascending;00000000
+<br/>    0000000000000000000000000000000001001000010010000000010010000000011100
+<br/>    0100101010111100011011000100110110000011011110100110111111111111011111
+<br/>    11111111111110111000</div>
+<div class="OptionsBox">
+    FingerprintsBitVector;MACCSKeyBits;322;BinaryString;Ascending;11101011
+<br/>    1110011111100101111111000111101100110000000000000011100010000000000000
+<br/>    0000000000000000000000000000000000000000000000101000000000000000000000
+<br/>    0000000000000000000000000000000000000000000000000000000000000000000000
+<br/>    0000000000000000000000000000000000000011000000000000000000000000000000
+<br/>    0000000000000000000000000000000000000000</div>
+<div class="OptionsBox">
+    FingerprintsVector;MACCSKeyCount;166;OrderedNumericalValues;ValuesStri
+<br/>    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
+<br/>    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
+<br/>    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
+<br/>    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
+<br/>    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</div>
+<div class="OptionsBox">
+    FingerprintsVector;MACCSKeyCount;322;OrderedNumericalValues;ValuesStri
+<br/>    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
+<br/>    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
+<br/>    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
+<br/>    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
+<br/>    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 ...</div>
+<div class="OptionsBox">
+    FingerprintsBitVector;PathLengthBits:AtomicInvariantsAtomTypes:MinLeng
+<br/>    th1:MaxLength8;1024;BinaryString;Ascending;001000010011010101011000110
+<br/>    0100010101011000101001011100110001000010001001101000001001001001001000
+<br/>    0010110100000111001001000001001010100100100000000011000000101001011100
+<br/>    0010000001000101010100000100111100110111011011011000000010110111001101
+<br/>    0101100011000000010001000011000010100011101100001000001000100000000...</div>
+<div class="OptionsBox">
+    FingerprintsVector;PathLengthCount:AtomicInvariantsAtomTypes:MinLength
+<br/>    1:MaxLength8;432;NumericalValues;IDsAndValuesPairsString;C.X1.BO1.H3 2
+<br/>    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
+<br/>    2.BO2.H1 1 N.X3.BO3 1 O.X1.BO1.H1 3 O.X1.BO2 2 C.X1.BO1.H3C.X3.BO3.H1
+<br/>    2 C.X2.BO2.H2C.X2.BO2.H2 1 C.X2.BO2.H2C.X3.BO3.H1 4 C.X2.BO2.H2C.X3.BO
+<br/>    4 1 C.X2.BO2.H2N.X3.BO3 1 C.X2.BO3.H1:C.X2.BO3.H1 10 C.X2.BO3.H1:C....</div>
+<div class="OptionsBox">
+    FingerprintsVector;PathLengthCount:MMFF94AtomTypes:MinLength1:MaxLengt
+<br/>    h8;463;NumericalValues;IDsAndValuesPairsString;C5A 2 C5B 2 C=ON 1 CB 1
+<br/>    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
+<br/>    5 2 C5ACB 1 C5ACR 1 C5B:C5B 1 C5BC=ON 1 C5BCB 1 C=ON=O=CN 1 C=ONNC=O 1
+<br/>    CB:CB 18 CBF 1 CBNC=O 1 COO=O=CO 1 COOCR 1 COOOC=O 1 CRCR 7 CRN5 1 CR
+<br/>    OR 2 C5A:C5B:C5B 2 C5A:C5BC=ON 1 C5A:C5BCB 1 C5A:N5:C5A 1 C5A:N5CR ...</div>
+<div class="OptionsBox">
+    FingerprintsVector;TopologicalAtomPairs:AtomicInvariantsAtomTypes:MinD
+<br/>    istance1:MaxDistance10;223;NumericalValues;IDsAndValuesString;C.X1.BO1
+<br/>    .H3-D1-C.X3.BO3.H1 C.X2.BO2.H2-D1-C.X2.BO2.H2 C.X2.BO2.H2-D1-C.X3.BO3.
+<br/>    H1 C.X2.BO2.H2-D1-C.X3.BO4 C.X2.BO2.H2-D1-N.X3.BO3 C.X2.BO3.H1-D1-...;
+<br/>    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
+<br/>    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...</div>
+<div class="OptionsBox">
+    FingerprintsVector;TopologicalAtomPairs:FunctionalClassAtomTypes:MinDi
+<br/>    stance1:MaxDistance10;144;NumericalValues;IDsAndValuesString;Ar-D1-Ar
+<br/>    Ar-D1-Ar.HBA Ar-D1-HBD Ar-D1-Hal Ar-D1-None Ar.HBA-D1-None HBA-D1-NI H
+<br/>    BA-D1-None HBA.HBD-D1-NI HBA.HBD-D1-None HBD-D1-None NI-D1-None No...;
+<br/>    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
+<br/>    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 ...</div>
+<div class="OptionsBox">
+    FingerprintsVector;TopologicalAtomTorsions:AtomicInvariantsAtomTypes;3
+<br/>    3;NumericalValues;IDsAndValuesString;C.X1.BO1.H3-C.X3.BO3.H1-C.X3.BO4-
+<br/>    C.X3.BO4 C.X1.BO1.H3-C.X3.BO3.H1-C.X3.BO4-N.X3.BO3 C.X2.BO2.H2-C.X2.BO
+<br/>    2.H2-C.X3.BO3.H1-C.X2.BO2.H2 C.X2.BO2.H2-C.X2.BO2.H2-C.X3.BO3.H1-O...;
+<br/>    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</div>
+<div class="OptionsBox">
+    FingerprintsVector;TopologicalAtomTorsions:EStateAtomTypes;36;Numerica
+<br/>    lValues;IDsAndValuesString;aaCH-aaCH-aaCH-aaCH aaCH-aaCH-aaCH-aasC aaC
+<br/>    H-aaCH-aasC-aaCH aaCH-aaCH-aasC-aasC aaCH-aaCH-aasC-sF aaCH-aaCH-aasC-
+<br/>    ssNH aaCH-aasC-aasC-aasC aaCH-aasC-aasC-aasN aaCH-aasC-ssNH-dssC a...;
+<br/>    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</div>
+<div class="OptionsBox">
+    FingerprintsVector;TopologicalAtomTriplets:AtomicInvariantsAtomTypes:M
+<br/>    inDistance1:MaxDistance10;3096;NumericalValues;IDsAndValuesString;C.X1
+<br/>    .BO1.H3-D1-C.X1.BO1.H3-D1-C.X3.BO3.H1-D2 C.X1.BO1.H3-D1-C.X2.BO2.H2-D1
+<br/>    0-C.X3.BO4-D9 C.X1.BO1.H3-D1-C.X2.BO2.H2-D3-N.X3.BO3-D4 C.X1.BO1.H3-D1
+<br/>    -C.X2.BO2.H2-D4-C.X2.BO2.H2-D5 C.X1.BO1.H3-D1-C.X2.BO2.H2-D6-C.X3....;
+<br/>    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
+<br/>    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...</div>
+<div class="OptionsBox">
+    FingerprintsVector;TopologicalAtomTriplets:SYBYLAtomTypes:MinDistance1
+<br/>    :MaxDistance10;2332;NumericalValues;IDsAndValuesString;C.2-D1-C.2-D9-C
+<br/>    .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-
+<br/>    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
+<br/>    -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.
+<br/>    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...</div>
+<div class="OptionsBox">
+    FingerprintsVector;TopologicalPharmacophoreAtomPairs:ArbitrarySize:Min
+<br/>    Distance1:MaxDistance10;54;NumericalValues;IDsAndValuesString;H-D1-H H
+<br/>    -D1-NI HBA-D1-NI HBD-D1-NI H-D2-H H-D2-HBA H-D2-HBD HBA-D2-HBA HBA-D2-
+<br/>    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
+<br/>    BA H-D4-HBD HBA-D4-HBA HBA-D4-HBD HBD-D4-HBD H-D5-H H-D5-HBA H-D5-...;
+<br/>    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
+<br/>    3 4 1 37 10 8 1 35 10 9 3 3 1 28 7 7 4 18 16 12 5 1 2 1</div>
+<div class="OptionsBox">
+    FingerprintsVector;TopologicalPharmacophoreAtomPairs:FixedSize:MinDist
+<br/>    ance1:MaxDistance10;150;OrderedNumericalValues;ValuesString;18 0 0 1 0
+<br/>    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
+<br/>    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
+<br/>    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
+<br/>    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...</div>
+<div class="OptionsBox">
+    FingerprintsVector;TopologicalPharmacophoreAtomTriplets:ArbitrarySize:
+<br/>    MinDistance1:MaxDistance10;696;NumericalValues;IDsAndValuesString;Ar1-
+<br/>    Ar1-Ar1 Ar1-Ar1-H1 Ar1-Ar1-HBA1 Ar1-Ar1-HBD1 Ar1-H1-H1 Ar1-H1-HBA1 Ar1
+<br/>    -H1-HBD1 Ar1-HBA1-HBD1 H1-H1-H1 H1-H1-HBA1 H1-H1-HBD1 H1-HBA1-HBA1 H1-
+<br/>    HBA1-HBD1 H1-HBA1-NI1 H1-HBD1-NI1 HBA1-HBA1-NI1 HBA1-HBD1-NI1 Ar1-...;
+<br/>    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
+<br/>    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
+<br/>    119 123 24 15 185 202 41 25 22 17 3 5 85 95 18 11 23 17 3 1 1 6 4 ...</div>
+<div class="OptionsBox">
+    FingerprintsVector;TopologicalPharmacophoreAtomTriplets:FixedSize:MinD
+<br/>    istance1:MaxDistance10;2692;OrderedNumericalValues;ValuesString;46 106
+<br/>    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
+<br/>    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
+<br/>    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
+<br/>    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 ...</div>
+<p>
+</p>
+<h2>METHODS</h2>
+<dl>
+<dt><strong><a name="new" class="item"><strong>new</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $NewFingerprintsFPFileIO = new FileIO::FingerprintsFPFileIO(%IOParameters);</div>
+<p>Using specified <em>IOParameters</em> names and values hash, <strong>new</strong> method creates a new
+object and returns a reference to a newly created <strong>FingerprintsFPFileIO</strong> object. By default,
+the following properties are initialized during <em>Read</em> mode:</p>
+<div class="OptionsBox">
+    Name = '';
+<br/>    Mode = 'Read';
+<br/>    Status = 0;
+<br/>    FingerprintsStringMode = 'AutoDetect';
+<br/>    ValidateData = 1;
+<br/>    DetailLevel = 1;</div>
+<p>During <em>Write</em> mode, the following properties get initialize by default:</p>
+<div class="OptionsBox">
+    FingerprintsStringMode = undef;</div>
+<div class="OptionsBox">
+    BitStringFormat = HexadecimalString;
+<br/>    BitsOrder = Ascending;</div>
+<div class="OptionsBox">
+    VectorStringFormat = NumericalValuesString or ValuesString;</div>
+<p>Examples:</p>
+<div class="OptionsBox">
+    $NewFingerprintsFPFileIO = new FileIO::FingerprintsFPFileIO(
+                               'Name' =&gt; 'Sample.fpf',
+                               'Mode' =&gt; 'Read',
+                               'FingerprintsStringMode' =&gt;
+                                       'AutoDetect');</div>
+<div class="OptionsBox">
+    $NewFingerprintsFPFileIO = new FileIO::FingerprintsFPFileIO(
+                               'Name' =&gt; 'Sample.fpf',
+                               'Mode' =&gt; 'Write',
+                               'FingerprintsStringMode' =&gt;
+                                       'FingerprintsBitVectorString',
+                               'Overwrite' =&gt; 1,
+                               'BitStringFormat' =&gt; 'HexadecimalString',
+                               'BitsOrder' =&gt; 'Ascending');</div>
+<div class="OptionsBox">
+    $NewFingerprintsFPFileIO = new FileIO::FingerprintsFPFileIO(
+                               'Name' =&gt; 'Sample.fp',
+                               'Mode' =&gt; 'Write',
+                               'FingerprintsStringMode' =&gt;
+                                       'FingerprintsVectorString',
+                               'Overwrite' =&gt; 1,
+                               'VectorStringFormat' =&gt; 'IDsAndValuesString');</div>
+</dd>
+<dt><strong><a name="getfingerprints" class="item"><strong>GetFingerprints</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $FingerprintsObject = $FingerprintsFPFileIO-&gt;GetFingerprints();</div>
+<p>Returns <strong>FingerprintsObject</strong> 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.</p>
+</dd>
+<dt><strong><a name="getfingerprintsstring" class="item"><strong>GetFingerprintsString</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $FingerprintsString = $FingerprintsFPFileIO-&gt;GetFingerprintsString();</div>
+<p>Returns <strong>FingerprintsString</strong> for current data line.</p>
+</dd>
+<dt><strong><a name="getheaderdatakeyvalue" class="item"><strong>GetHeaderDataKeyValue</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $KeyValue = $FingerprintsFPFileIO-&gt;GetHeaderDataKeyValue($Key);</div>
+<p>Returns <strong>KeyValue</strong> of a data header <em>Key</em>.</p>
+</dd>
+<dt><strong><a name="getheaderdatakeys" class="item"><strong>GetHeaderDataKeys</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    @Keys = $FingerprintsFPFileIO-&gt;GetHeaderDataKeys();
+<br/>    $NumOfKeys = $FingerprintsFPFileIO-&gt;GetHeaderDataKeys();</div>
+<p>Returns an array of data header <strong>Keys</strong> retrieved from data header section of fingerprints
+file. In scalar context, it returns number of keys.</p>
+</dd>
+<dt><strong><a name="getheaderdatakeysandvalues" class="item"><strong>GetHeaderDataKeysAndValues</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    %KeysAndValues = $FingerprintsFPFileIO-&gt;GetHeaderDataKeysAndValues();</div>
+<p>Returns a hash of data header keys and values retrieved from data header section of fingerprints
+file.</p>
+</dd>
+<dt><strong><a name="getpartialfingerprintsstring" class="item"><strong>GetPartialFingerprintsString</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $FingerprintsString = $FingerprintsFPFileIO-&gt;GetPartialFingerprintsString();</div>
+<p>Returns partial <strong>FingerprintsString</strong> for current data line. It corresponds to fingerprints string
+specified present in a line.</p>
+</dd>
+<dt><strong><a name="getrequiredheaderdatakeys" class="item"><strong>GetRequiredHeaderDataKeys</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    @Keys = $FingerprintsFPFileIO-&gt;GetRequiredHeaderDataKeys();
+<br/>    $NumOfKeys = $FingerprintsFPFileIO-&gt;GetRequiredHeaderDataKeys();</div>
+<p>Returns an array of required data header <strong>Keys</strong> for a fingerprints file containing bit-vector or
+vector strings data. In scalar context, it returns number of keys.</p>
+</dd>
+<dt><strong><a name="getrequiredheaderdatakeysandvalues" class="item"><strong>GetRequiredHeaderDataKeysAndValues</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    %KeysAndValues = $FingerprintsFPFileIO-&gt;
+                     GetRequiredHeaderDataKeysAndValues();</div>
+<p>Returns a hash of required data header keys and values for a fingerprints file containing bit-vector or
+vector strings data</p>
+</dd>
+<dt><strong><a name="isfingerprintsdatavalid" class="item"><strong>IsFingerprintsDataValid</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $Status = $FingerprintsFPFileIO-&gt;IsFingerprintsDataValid();</div>
+<p>Returns 1 or 0 based on whether <strong>FingerprintsObject</strong> is valid.</p>
+</dd>
+<dt><strong><a name="isfingerprintsfpfile" class="item"><strong>IsFingerprintsFPFile</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $Status = $FingerprintsFPFileIO-&gt;IsFingerprintsFPFile($FileName);
+<br/>    $Status = FileIO::FingerprintsFPFileIO::IsFingerprintsFPFile($FileName);</div>
+<p>Returns 1 or 0 based on whether <em>FileName</em> is a FP file.</p>
+</dd>
+<dt><strong><a name="isfingerprintsfiledatavalid" class="item"><strong>IsFingerprintsFileDataValid</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $Status = $FingerprintsFPFileIO-&gt;IsFingerprintsFileDataValid();</div>
+<p>Returns 1 or 0 based on whether fingerprints file contains valid fingerprints data.</p>
+</dd>
+<dt><strong><a name="isheaderdatakeypresent" class="item"><strong>IsHeaderDataKeyPresent</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $Status = $FingerprintsFPFileIO-&gt;IsHeaderDataKeyPresent($Key);</div>
+<p>Returns 1 or 0 based on whether data header <em>Key</em> is present in data header
+section of a FP file.</p>
+</dd>
+<dt><strong><a name="next_or_read" class="item"><strong>Next or Read</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $FingerprintsFPFileIO = $FingerprintsFPFileIO-&gt;Next();
+<br/>    $FingerprintsFPFileIO = $FingerprintsFPFileIO-&gt;Read();</div>
+<p>Reads next available fingerprints line in FP file, processes the data, generates appropriate fingerprints
+object, and returns <strong>FingerprintsFPFileIO</strong>. The generated fingerprints object is available using
+method <strong>GetFingerprints</strong>.</p>
+</dd>
+<dt><strong><a name="setbitstringformat" class="item"><strong>SetBitStringFormat</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $FingerprintsFPFileIO-&gt;SetBitStringFormat($Format);</div>
+<p>Sets bit string <em>Format</em> for fingerprints bit-vector string data in a FP file and returns <strong>FingerprintsFPFileIO</strong>.
+Possible values for <strong>BitStringFormat</strong>: <em>BinaryString or HexadecimalString</em>.</p>
+</dd>
+<dt><strong><a name="setbitsorder" class="item"><strong>SetBitsOrder</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $FingerprintsFPFileIO-&gt;SetBitsOrder($BitsOrder);</div>
+<p>Sets <em>BitsOrder</em> for fingerprints bit-vector string data in a FP file and returns <strong>FingerprintsFPFileIO</strong>.
+Possible values for <strong>BitsOrder</strong>: <em>Ascending or Descending</em>.</p>
+</dd>
+<dt><strong><a name="setcompoundid" class="item"><strong>SetCompoundID</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $FingerprintsFPFileIO-&gt;SetCompoundID($ID);</div>
+<p>Sets compound ID for current data line and returns <strong>FingerprintsFPFileIO</strong>. Spaces are not allowed
+in compound IDs.</p>
+</dd>
+<dt><strong><a name="setdetaillevel" class="item"><strong>SetDetailLevel</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $FingerprintsFPFileIO-&gt;SetDetailLevel($Level);</div>
+<p>Sets details <em>Level</em> for generating diagnostics messages during FP file processing and returns
+<strong>FingerprintsFPFileIO</strong>. Possible values: <em>Positive integers</em>.</p>
+</dd>
+<dt><strong><a name="setfingerprints" class="item"><strong>SetFingerprints</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $FingerprintsFPFileIO-&gt;SetFingerprints($FingerprintsObject);</div>
+<p>Sets <em>FingerprintsObject</em> for current data line and returns <strong>FingerprintsFPFileIO</strong>.</p>
+</dd>
+<dt><strong><a name="setfingerprintsstring" class="item"><strong>SetFingerprintsString</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $FingerprintsFPFileIO-&gt;SetFingerprintsString($FingerprintsString);</div>
+<p>Sets <em>FingerprintsString</em> for current data line and returns <strong>FingerprintsFPFileIO</strong>.</p>
+</dd>
+<dt><strong><a name="setfingerprintsstringmode" class="item"><strong>SetFingerprintsStringMode</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $FingerprintsFPFileIO-&gt;SetFingerprintsStringMode($Mode);</div>
+<p>Sets <em>FingerprintsStringMode</em> for FP file and returns <strong>FingerprintsFPFileIO</strong>.
+Possible values: <em>AutoDetect, FingerprintsBitVectorString, or FingerprintsVectorString</em></p>
+</dd>
+<dt><strong><a name="setpartialfingerprintsstring" class="item"><strong>SetPartialFingerprintsString</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $FingerprintsFPFileIO-&gt;SetPartialFingerprintsString($PartialString);</div>
+<p>Sets <em>PartialFingerprintsString</em> for current data line and returns <strong>FingerprintsFPFileIO</strong>.</p>
+</dd>
+<dt><strong><a name="setvectorstringformat" class="item"><strong>SetVectorStringFormat</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $FingerprintsFPFileIO-&gt;SetVectorStringFormat($Format);</div>
+<p>Sets <em>VectorStringFormat</em> for FP file and returns <strong>FingerprintsFPFileIO</strong>. Possible values:
+<em>IDsAndValuesString, IDsAndValuesPairsString, ValuesAndIDsString, ValuesAndIDsPairsString</em>.</p>
+</dd>
+<dt><strong><a name="writefingerprints" class="item"><strong>WriteFingerprints</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $FingerprintsFPFileIO-&gt;WriteFingerprints($FingerprintsObject,
+                                            $CompoundID);</div>
+<p>Writes fingerprints string generated from <em>FingerprintsObject</em> object and other data including
+<em>CompoundID</em> to FP file and returns <strong>FingerprintsFPFileIO</strong>.</p>
+</dd>
+<dt><strong><a name="writefingerprintsstring" class="item"><strong>WriteFingerprintsString</strong></a></strong></dt>
+<dd>
+<div class="OptionsBox">
+    $FingerprintsFPFileIO-&gt;WriteFingerprints($FingerprintsString,
+                                            $CompoundID);</div>
+<p>Writes <em>FingerprintsString</em> and other data including <em>CompoundID</em> to FP file and returns
+<strong>FingerprintsFPFileIO</strong>.</p>
+<p>Caveats:</p>
+<div class="OptionsBox">
+    o FingerprintsStringMode, BitStringFormat, BitsOrder, VectorStringFormat
+      values are ignored during writing of fingerprints and it's written to
+      the file as it is.
+<br/>    o FingerprintsString is a regular fingerprints string as oppose to a
+      partial fingerprints string.</div>
+</dd>
+</dl>
+<p>
+</p>
+<h2>AUTHOR</h2>
+<p><a href="mailto:msud@san.rr.com">Manish Sud</a></p>
+<p>
+</p>
+<h2>SEE ALSO</h2>
+<p><a href="./FingerprintsSDFileIO.html">FingerprintsSDFileIO.pm</a>,&nbsp<a href="./FingerprintsTextFileIO.html">FingerprintsTextFileIO.pm</a>
+</p>
+<p>
+</p>
+<h2>COPYRIGHT</h2>
+<p>Copyright (C) 2015 Manish Sud. All rights reserved.</p>
+<p>This file is part of MayaChemTools.</p>
+<p>MayaChemTools is free software; you can redistribute it and/or modify it under
+the terms of the GNU Lesser General Public License as published by the Free
+Software Foundation; either version 3 of the License, or (at your option)
+any later version.</p>
+<p>&nbsp</p><p>&nbsp</p><div class="DocNav">
+<table width="100%" border=0 cellpadding=0 cellspacing=2>
+<tr align="left" valign="top"><td width="33%" align="left"><a href="./FileIO.html" title="FileIO.html">Previous</a>&nbsp;&nbsp;<a href="./index.html" title="Table of Contents">TOC</a>&nbsp;&nbsp;<a href="./FingerprintsSDFileIO.html" title="FingerprintsSDFileIO.html">Next</a></td><td width="34%" align="middle"><strong>March 29, 2015</strong></td><td width="33%" align="right"><strong>FileIO::FingerprintsFPFileIO.pm</strong></td></tr>
+</table>
+</div>
+<br />
+<center>
+<img src="../../images/h2o2.png">
+</center>
+</body>
+</html>