/usr/include/openbabel-2.0/openbabel/graphsym.h is in libopenbabel-dev 2.3.2+dfsg-1.1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 | /**********************************************************************
graphsym.h - Class for handling graph symmetry.
Copyright (C) 2009-2010 by Tim Vandermeersch
Copyright (C) 2005-2006, eMolecules, Inc. (www.emolecules.com)
Craig A. James
This file is part of the Open Babel project.
For more information, see <http://openbabel.org/>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation version 2 of the License.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
***********************************************************************/
#ifndef OB_GRAPHSYM_H
#define OB_GRAPHSYM_H
#include <openbabel/babelconfig.h>
#include <openbabel/stereo/stereo.h>
#include <vector>
#ifndef EXTERN
# define EXTERN extern
#endif
namespace OpenBabel {
class OBBitVec;
class OBMol;
class OBAtom;
class OBBond;
class OBMol;
class OBGraphSymPrivate;
/**
* @class OBGraphSym graphsym.h <openbabel/graphsym.h>
* @brief Handle and perceive graph symmtery for canonical numbering .
* @since version 2.3
*/
class OBAPI OBGraphSym {
public:
//! Constructor
OBGraphSym(OBMol* pmol, const OBBitVec* frag_atoms = NULL);
//! Destructor
virtual ~OBGraphSym();
static const unsigned int NoSymmetryClass;
/**
* Calculate the symmetry classes for the molecule. The result will be
* stored in @p symmetry_classes.
*
* The results in @p symmetry_classes will be ordered by symmetry
* classes. Use the OBAtom* pointer in the std::pair to match the atoms
* with the right symmetry classes.
*
* @return The number of symmetry classes.
*/
int GetSymmetry(std::vector<unsigned int> &symmetry_classes);
/**
* Clear the symmetry classes data stored in the molecule specified when
* construting the OBGraphSym object.
*/
void ClearSymmetry();
private:
OBGraphSymPrivate * const d;
};
} // namespace OpenBabel
#endif // OB_GRAPHSYM_H
//! \file graphsym.h
//! \brief Handle and perceive graph symmtery for canonical numbering
|