Chemical Data Processing Library Python API - Version 1.2.0
Public Member Functions | Properties | List of all members
CDPL.Pharm.FeatureMapping Class Reference

A data type for the storage and lookup of arbitrary feature to feature mappings. More...

+ Inheritance diagram for CDPL.Pharm.FeatureMapping:

Public Member Functions

None __init__ ()
 Creates an empty map.
 
None __init__ (FeatureMapping mapping)
 Initializes a copy of the FeatureMapping instance mapping. More...
 
int getObjectID ()
 Returns the numeric identifier (ID) of the wrapped C++ class instance. More...
 
int getSize ()
 Returns the size (number of entries) of the map. More...
 
bool isEmpty ()
 Tells whether the map is empty (getSize() == 0). More...
 
None clear ()
 Erases all entries.
 
FeatureMapping assign (FeatureMapping map)
 Replaces the current state of self with a copy of the state of the FeatureMapping instance map. More...
 
Feature getValue (Feature key)
 Returns a reference to the first value associated with the specified key. More...
 
Feature getValue (Feature key, Feature def_value)
 Returns a reference to the first value associated with the specified key, or the value given by the second argument if an entry with the given key does not exist. More...
 
bool removeEntry (Feature key)
 Removes the first entry with the specified key from the map. More...
 
None setEntry (Feature key, Feature value)
 Replaces all entries with a key equivalent to key with a single copy of the key/value pair (key, value). More...
 
object getKeys ()
 
object keys ()
 
object getValues ()
 
object getValues (Feature key)
 
object values ()
 
object getEntries ()
 
object items ()
 
int getNumEntries (Feature key)
 Returns the number of entries with the specified key. More...
 
int removeEntries (Feature key)
 Removes all entries with the specified key from the map. More...
 
None insertEntry (Feature key, Feature value)
 Inserts a new entry with specified key and value into the map. More...
 
int __len__ ()
 
Feature __getitem__ (Feature key)
 
None __setitem__ (Feature key, Feature value)
 
bool __delitem__ (Feature key)
 
int __contains__ (Feature key)
 Returns the result of the membership test operation key in self. More...
 

Properties

 objectID = property(getObjectID)
 
 size = property(getSize)
 

Detailed Description

A data type for the storage and lookup of arbitrary feature to feature mappings.

Features mappings are stored as pairs of references to the mapped Pharm.Feature objects. Mappings do not have to be unique and multiple mappings of a given feature to other features are possible. If a mapping entry for a particular feature does not exist, the methods FeatureMapping.getValue() and FeatureMapping.operator[]() return a None reference to indicate that the lookup of the mapped feature has failed.

Constructor & Destructor Documentation

◆ __init__()

None CDPL.Pharm.FeatureMapping.__init__ ( FeatureMapping  mapping)

Initializes a copy of the FeatureMapping instance mapping.

Parameters
mappingThe FeatureMapping instance to copy.

Member Function Documentation

◆ getObjectID()

int CDPL.Pharm.FeatureMapping.getObjectID ( )

Returns the numeric identifier (ID) of the wrapped C++ class instance.

Different Python FeatureMapping instances may reference the same underlying C++ class instance. The commonly used Python expression a is not b thus cannot tell reliably whether the two FeatureMapping instances a and b reference different C++ objects. The numeric identifier returned by this method allows to correctly implement such an identity test via the simple expression a.getObjectID() != b.getObjectID().

Returns
The numeric ID of the internally referenced C++ class instance.

Reimplemented in CDPL.Pharm.SpatialFeatureMapping.

◆ getSize()

int CDPL.Pharm.FeatureMapping.getSize ( )

Returns the size (number of entries) of the map.

Returns
The size of the map.

◆ isEmpty()

bool CDPL.Pharm.FeatureMapping.isEmpty ( )

Tells whether the map is empty (getSize() == 0).

Returns
True if the map is empty, and False otherwise.

◆ assign()

FeatureMapping CDPL.Pharm.FeatureMapping.assign ( FeatureMapping  map)

Replaces the current state of self with a copy of the state of the FeatureMapping instance map.

Parameters
mapThe FeatureMapping instance to copy.
Returns
self

◆ getValue() [1/2]

Feature CDPL.Pharm.FeatureMapping.getValue ( Feature  key)

Returns a reference to the first value associated with the specified key.

If the map contains the specified entry, a reference to the associated value is returned. If the map does not contain the entry and default values are enabled (that is, the template parameter AllowDefValues is True), a reference to a default constructed value object is returned. Otherwise, Base.ItemNotFound is thrown to indicate the error.

Parameters
keyThe key associated with the requested value.
Returns
A reference to the requested value.
Exceptions
Base.ItemNotFoundif AllowDefValues is False and the map does not contain an entry with the specified key.
See also
getValue(const Key&) const

◆ getValue() [2/2]

Feature CDPL.Pharm.FeatureMapping.getValue ( Feature  key,
Feature  def_value 
)

Returns a reference to the first value associated with the specified key, or the value given by the second argument if an entry with the given key does not exist.

If the map contains an entry with the specified key, a reference to the associated value is returned. If the map does not contain the entry, the second argument def_value is returned.

Parameters
keyThe key associated with the requested value.
def_valueThe value which is returned if the specified entry does not exist.
Returns
A reference to the requested or default value.

◆ removeEntry()

bool CDPL.Pharm.FeatureMapping.removeEntry ( Feature  key)

Removes the first entry with the specified key from the map.

Parameters
keyThe key specifying the entry to remove.

◆ setEntry()

None CDPL.Pharm.FeatureMapping.setEntry ( Feature  key,
Feature  value 
)

Replaces all entries with a key equivalent to key with a single copy of the key/value pair (key, value).

If no entries with a key equivalent to the specified key exist, setEntry(k, v) is equivalent to insertEntry(k, v).

Parameters
keyThe key of the entries to replace.
valueThe value associated with key.
Returns
An iterator that points to the entry with a key that is equivalent to the specified key.

◆ getKeys()

object CDPL.Pharm.FeatureMapping.getKeys ( )
Returns

◆ keys()

object CDPL.Pharm.FeatureMapping.keys ( )
Returns

◆ getValues() [1/2]

object CDPL.Pharm.FeatureMapping.getValues ( )
Returns

◆ getValues() [2/2]

object CDPL.Pharm.FeatureMapping.getValues ( Feature  key)
Parameters
key
Returns

◆ values()

object CDPL.Pharm.FeatureMapping.values ( )
Returns

◆ getEntries()

object CDPL.Pharm.FeatureMapping.getEntries ( )
Returns

◆ items()

object CDPL.Pharm.FeatureMapping.items ( )
Returns

◆ getNumEntries()

int CDPL.Pharm.FeatureMapping.getNumEntries ( Feature  key)

Returns the number of entries with the specified key.

Parameters
keyThe key of the entries to count.
Returns
The number of entries with the specified key.

◆ removeEntries()

int CDPL.Pharm.FeatureMapping.removeEntries ( Feature  key)

Removes all entries with the specified key from the map.

Parameters
keyThe key specifying the entries to remove.
Returns
The number of removed entries.

◆ insertEntry()

None CDPL.Pharm.FeatureMapping.insertEntry ( Feature  key,
Feature  value 
)

Inserts a new entry with specified key and value into the map.

Parameters
keyThe key of the entry to insert.
valueThe value associated with key
Returns
An iterator pointing to the inserted entry.

◆ __len__()

int CDPL.Pharm.FeatureMapping.__len__ ( )
Returns

◆ __getitem__()

Feature CDPL.Pharm.FeatureMapping.__getitem__ ( Feature  key)
Parameters
key
Returns

◆ __setitem__()

None CDPL.Pharm.FeatureMapping.__setitem__ ( Feature  key,
Feature  value 
)
Parameters
key
value

◆ __delitem__()

bool CDPL.Pharm.FeatureMapping.__delitem__ ( Feature  key)
Parameters
key
Returns

◆ __contains__()

int CDPL.Pharm.FeatureMapping.__contains__ ( Feature  key)

Returns the result of the membership test operation key in self.

Parameters
keyThe value to test for membership.
Returns
The result of the membership test operation.