BALL::UCK Class Reference
[Miscellaneous]

#include <BALL/STRUCTURE/UCK.h>

List of all members.

Public Types

Type definitions

typedef std::vector< std::pair
< Size, Size > > 
PairVector
typedef std::vector
< std::vector< Size > > 
SizeVector

Public Member Functions

 UCK ()
 UCK (const Molecule &mol, Size d=3)
 UCK (UCK &uck)
virtual ~UCK ()
void printUCK (std::ostream &outstr)
Size getDepth ()
const String & getFormula () const
const String & getUCK () const
const String & getId () const
float getWeight ()

Private Member Functions

String eraseDoubleLabels (const Size d, String x, String label)
void makeUCK (const Molecule &m)
void getGraph (std::vector< String > &v, PairVector &e, const Molecule &mol)
void makePathMatrix (const PairVector &e, SizeVector &sp, const Size e_size)
void makePairs (const std::vector< String > &lambda_map, std::vector< String > &pairs, const std::vector< vector< Size > > &sp)
String lambda (String lambda_d, const PairVector &e, const std::vector< String > &v, Size pos, Size d)
void createFinalString (const std::vector< String > &pairs)

Private Attributes

Size depth_
String formula_
String uck_str_
String id_
float weight_

Detailed Description

Unique Chemical Key. Implements the UCK algorithm for computing a unique key for a given chemical structure.


Member Typedef Documentation

typedef std::vector<std::pair<Size, Size> > BALL::UCK::PairVector
typedef std::vector<std::vector<Size> > BALL::UCK::SizeVector

Constructor & Destructor Documentation

BALL::UCK::UCK (  ) 
BALL::UCK::UCK ( const Molecule &  mol,
Size  d = 3 
)
BALL::UCK::UCK ( UCK &  uck  ) 
virtual BALL::UCK::~UCK (  )  [virtual]

Member Function Documentation

void BALL::UCK::createFinalString ( const std::vector< String > &  pairs  )  [private]
String BALL::UCK::eraseDoubleLabels ( const Size  d,
String  x,
String  label 
) [private]
Size BALL::UCK::getDepth (  ) 
const String& BALL::UCK::getFormula (  )  const
void BALL::UCK::getGraph ( std::vector< String > &  v,
PairVector &  e,
const Molecule &  mol 
) [private]
const String& BALL::UCK::getId (  )  const
const String& BALL::UCK::getUCK (  )  const
float BALL::UCK::getWeight (  ) 
String BALL::UCK::lambda ( String  lambda_d,
const PairVector &  e,
const std::vector< String > &  v,
Size  pos,
Size  d 
) [private]
void BALL::UCK::makePairs ( const std::vector< String > &  lambda_map,
std::vector< String > &  pairs,
const std::vector< vector< Size > > &  sp 
) [private]
void BALL::UCK::makePathMatrix ( const PairVector &  e,
SizeVector &  sp,
const Size  e_size 
) [private]
void BALL::UCK::makeUCK ( const Molecule &  m  )  [private]
void BALL::UCK::printUCK ( std::ostream &  outstr  ) 

Member Data Documentation