OpenStructure
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
Examples
File List
Globals
stage
include
ost
conop
ring_finder.hh
Go to the documentation of this file.
1
//------------------------------------------------------------------------------
2
// This file is part of the OpenStructure project <www.openstructure.org>
3
//
4
// Copyright (C) 2008-2011 by the OpenStructure authors
5
//
6
// This library is free software; you can redistribute it and/or modify it under
7
// the terms of the GNU Lesser General Public License as published by the Free
8
// Software Foundation; either version 3.0 of the License, or (at your option)
9
// any later version.
10
// This library is distributed in the hope that it will be useful, but WITHOUT
11
// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
12
// FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more
13
// details.
14
//
15
// You should have received a copy of the GNU Lesser General Public License
16
// along with this library; if not, write to the Free Software Foundation, Inc.,
17
// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
18
//------------------------------------------------------------------------------
19
#ifndef OST_CONOP_RING_FINDER_HH
20
#define OST_CONOP_RING_FINDER_HH
21
22
/*
23
Author: Tobias Schmidt
24
*/
25
26
#include <
ost/conop/module_config.hh
>
27
#include <
ost/mol/mol.hh
>
28
#include <map>
29
30
namespace
ost {
namespace
conop {
31
39
class
DLLEXPORT_OST_CONOP
RingFinder
{
40
public
:
41
RingFinder
(
mol::EntityHandle
&eh);
42
public
:
43
51
void
PerceiveRings();
52
55
mol::EntityView
GetRings();
56
58
int
GetRingAtomCount();
59
61
int
GetRingBondCount();
62
64
bool
RingsPerceived();
65
66
private
:
67
int
VisitNext(
mol::AtomHandle
&curr,
mol::AtomHandle
&prev,
68
std::map<long int,bool> &ring_closings);
69
mol::EntityHandle
ent_;
70
mol::EntityView
ring_view_;
71
bool
rings_perceived_;
72
};
73
74
}}
75
76
#endif
Generated on Thu Jun 14 2012 18:58:01 for OpenStructure by
1.8.1.1