Loading...
Searching...
No Matches
ChiralSet.h
Go to the documentation of this file.
//
// Copyright (C) 2004-2008 Greg Landrum and Rational Discovery LLC
//
// @@ All Rights Reserved @@
// This file is part of the RDKit.
// The contents are covered by the terms of the BSD license
// which is included in the file license.txt, found at the root
// of the RDKit source tree.
//
#include <RDGeneral/export.h>
#ifndef __RD_CHIRAL_SET_H__
#define __RD_CHIRAL_SET_H__
#include <RDGeneral/Invariant.h>
#include <boost/smart_ptr.hpp>
#include <vector>
namespace DistGeom {
/*! \brief Class used to store a quartet of points and chiral volume bounds on
*them
*
*/
class RDKIT_DISTGEOMETRY_EXPORT ChiralSet {
public:
unsigned int d_idx0; // the centroid
unsigned int d_idx1;
unsigned int d_idx2;
unsigned int d_idx3;
unsigned int d_idx4;
double d_volumeLowerBound;
double d_volumeUpperBound;
ChiralSet(unsigned int pid0, unsigned int pid1, unsigned int pid2,
unsigned int pid3, unsigned int pid4, double lowerVolBound,
double upperVolBound)
: d_idx0(pid0),
d_idx1(pid1),
d_idx2(pid2),
d_idx3(pid3),
d_idx4(pid4),
d_volumeLowerBound(lowerVolBound),
d_volumeUpperBound(upperVolBound) {
CHECK_INVARIANT(lowerVolBound <= upperVolBound, "Inconsistent bounds\n");
d_volumeLowerBound = lowerVolBound;
d_volumeUpperBound = upperVolBound;
}
inline double getUpperVolumeBound() const { return d_volumeUpperBound; }
inline double getLowerVolumeBound() const { return d_volumeLowerBound; }
};
typedef boost::shared_ptr<ChiralSet> ChiralSetPtr;
typedef std::vector<ChiralSetPtr> VECT_CHIRALSET;
} // namespace DistGeom
#endif
Invariant.h
CHECK_INVARIANT
#define CHECK_INVARIANT(expr, mess)
Definition Invariant.h:101
DistGeom::ChiralSet
Class used to store a quartet of points and chiral volume bounds on them.
Definition ChiralSet.h:24
DistGeom::ChiralSet::d_idx4
unsigned int d_idx4
Definition ChiralSet.h:30
DistGeom::ChiralSet::d_volumeLowerBound
double d_volumeLowerBound
Definition ChiralSet.h:31
DistGeom::ChiralSet::d_idx3
unsigned int d_idx3
Definition ChiralSet.h:29
DistGeom::ChiralSet::ChiralSet
ChiralSet(unsigned int pid0, unsigned int pid1, unsigned int pid2, unsigned int pid3, unsigned int pid4, double lowerVolBound, double upperVolBound)
Definition ChiralSet.h:34
DistGeom::ChiralSet::getUpperVolumeBound
double getUpperVolumeBound() const
Definition ChiralSet.h:49
DistGeom::ChiralSet::d_idx1
unsigned int d_idx1
Definition ChiralSet.h:27
DistGeom::ChiralSet::getLowerVolumeBound
double getLowerVolumeBound() const
Definition ChiralSet.h:51
DistGeom::ChiralSet::d_volumeUpperBound
double d_volumeUpperBound
Definition ChiralSet.h:32
DistGeom::ChiralSet::d_idx0
unsigned int d_idx0
Definition ChiralSet.h:26
DistGeom::ChiralSet::d_idx2
unsigned int d_idx2
Definition ChiralSet.h:28
export.h
RDKIT_DISTGEOMETRY_EXPORT
#define RDKIT_DISTGEOMETRY_EXPORT
Definition export.h:129
DistGeom
Definition BoundsMatrix.h:20
DistGeom::VECT_CHIRALSET
std::vector< ChiralSetPtr > VECT_CHIRALSET
Definition ChiralSet.h:55
DistGeom::ChiralSetPtr
boost::shared_ptr< ChiralSet > ChiralSetPtr
Definition ChiralSet.h:54