1
2
3
4
5
6
7 """ contains factory class for producing signatures
8
9
10 """
11 from Chem.Pharm2D.Signature import Pharm2DSig as Signature
12
14 """
15
16 SigFactory's are used by creating one, setting the relevant
17 parameters, then calling the GetSignature() method each time a
18 signature is required.
19
20 """
22 self._patts = None
23 self._lables = None
24 self._bins = None
25 self._minCnt = 2
26 self._maxCnt = 4
27 self._shortestPathsOnly = 1
28 self._includeBondOrder = 0
29 self._labels = None
30
32 self._patts = patts[:]
34 import Chem
35 self._patts = [None]*len(smarts)
36 for i in range(len(smarts)):
37 p = Chem.MolFromSmarts(smarts[i])
38 self._patts[i] = p
42 return len(self._patts)
43
47 return self._labels[which]
50
52 """ bins should be a list of 2-tuples """
53 self._bins = bins[:]
57 return len(self._bins)
58
63
68
70 if not val:
71 raise ValueError,'only shortest paths signatures are currently supported'
72 self._shortestPathsOnly = val
74 return self._shortestPathsOnly
75
77 self._includeBondOrder = val
79 return self._includeBondOrder
80
81
93