Package schrodinger :: Package analysis :: Module enrichment :: Class FingerprintFromFileGenerator
[hide private]
[frames] | no frames]

Class FingerprintFromFileGenerator


Class to generate (identifier, fingerprint) items, one at a time,
from a structure file.  Optional property filtering controls which
structures are emitted as fingerprints.  By default only unique
structures, as judged by C{id_prop}, are generated.

API Examples:
-------------

# Only unique fingerprint for structures with a title of 'foo',
# 'bar', or 'baz' are generated.
activefps = FingerprintFromFileGenerator(
    structure.StructureReader('mystructures.mae'),
    fp_gen,
    prop_filter={'s_m_title': ['foo', 'bar', 'baz']}, 
)
for id, fp in activefps:
    process_fingerprint(fp)

# Only unique fingerprint for structures that don't have a title
# of 'foo', 'bar', or 'baz' are generated.
inactivefps = FingerprintFromFileGenerator(
    structure.StructureReader('mystructures.mae'),
    fp_gen,
    prop_filter={'s_m_title': ['foo', 'bar', 'baz']}, 
)
inactivfps.setInvertFilter()
for id, fp in inactivefps:
    process_fingerprint(fp)

Instance Methods [hide private]
 
__init__(self, file_name, fp_gen, id_prop='s_m_title', prop_filter=None)
 
__iter__(self)
 
__len__(self)
 
setUniqueIdsOnly(self)
Only generate unique occurences of <id_prop>
 
setNonUniqueIds(self)
Generate fingerprints for all occurences of structures that pass the prop_filter.
 
setInvertFilter(self)
 
setFilter(self)
 
_passesPropFilters(self, st)
Returns: True if structure's property values are defined within self.prop_filter values.
Method Details [hide private]

__init__(self, file_name, fp_gen, id_prop='s_m_title', prop_filter=None)
(Constructor)

 
Parameters:
  • file_name (string) - Path to the structure file.
  • fp_gen (canvas.fingerprint.CanvasFingerprintGenerator) - Configured Canvas fingerprint generator.
  • id_prop (string) - Dataname used to track unique structures. Default is 's_m_title'.
  • prop_filter (dict) - Dictionary of filter values. Dataname keys for a list of values. Default filtering will emit fingerprints only for those structures that have any value in the lists.

setNonUniqueIds(self)

 

Generate fingerprints for all occurences of structures that pass the prop_filter.

Only generate unique occurences of <id_prop>

_passesPropFilters(self, st)

 
Parameters:
  • st (structure.Structure.) - Structure to check.
Returns:
True if structure's property values are defined within self.prop_filter values.