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.
//
#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 ChiralSet {
public:
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 pid1, unsigned int pid2,
unsigned int pid3, unsigned int pid4,
double lowerVolBound, double upperVolBound) :
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;
}
#endif
Invariant.h
CHECK_INVARIANT
#define CHECK_INVARIANT(expr, mess)
Definition: Invariant.h:114
DistGeom
Definition: BoundsMatrix.h:19
DistGeom::ChiralSet::d_idx4
unsigned int d_idx4
Definition: ChiralSet.h:28
DistGeom::ChiralSet::d_volumeUpperBound
double d_volumeUpperBound
Definition: ChiralSet.h:30
DistGeom::VECT_CHIRALSET
std::vector< ChiralSetPtr > VECT_CHIRALSET
Definition: ChiralSet.h:52
DistGeom::ChiralSet::getUpperVolumeBound
double getUpperVolumeBound() const
Definition: ChiralSet.h:42
DistGeom::ChiralSet::d_idx2
unsigned int d_idx2
Definition: ChiralSet.h:26
DistGeom::ChiralSet::getLowerVolumeBound
double getLowerVolumeBound() const
Definition: ChiralSet.h:46
DistGeom::ChiralSet::ChiralSet
ChiralSet(unsigned int pid1, unsigned int pid2, unsigned int pid3, unsigned int pid4, double lowerVolBound, double upperVolBound)
Definition: ChiralSet.h:32
DistGeom::ChiralSetPtr
boost::shared_ptr< ChiralSet > ChiralSetPtr
Definition: ChiralSet.h:51
DistGeom::ChiralSet::d_volumeLowerBound
double d_volumeLowerBound
Definition: ChiralSet.h:29
DistGeom::ChiralSet::d_idx3
unsigned int d_idx3
Definition: ChiralSet.h:27
DistGeom::ChiralSet
Class used to store a quartet of points and chiral volume bounds on them.
Definition: ChiralSet.h:22
DistGeom::ChiralSet::d_idx1
unsigned int d_idx1
Definition: ChiralSet.h:25