BALL
1.4.2
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Groups
Pages
include
BALL
STRUCTURE
BONDORDERS
bondOrderAssignment.h
Go to the documentation of this file.
1
#ifndef BALL_STRUCTURE_BONDORDERS_BONDORDERASSIGNMENT_H
2
#define BALL_STRUCTURE_BONDORDERS_BONDORDERASSIGNMENT_H
3
4
#ifndef BALL_COMMON_GLOBAL_H
5
# include <
BALL/COMMON/global.h
>
6
#endif
7
8
#ifndef BALL_DATATYPE_HASHMAP_H
9
# include <
BALL/DATATYPE/hashMap.h
>
10
#endif
11
12
#ifndef BALL_STRUCTURE_BONDORDERS_PARTIALBONDORDERASSIGNMENT_H
13
# include <
BALL/STRUCTURE/BONDORDERS/partialBondOrderAssignment.h
>
14
#endif
15
16
namespace
BALL
17
{
18
class
AssignBondOrderProcessor;
19
class
AtomContainer;
20
class
Atom
;
21
class
Bond;
22
30
class
BALL_EXPORT
BondOrderAssignment
31
:
public
PartialBondOrderAssignment
32
{
33
friend
class
AssignBondOrderProcessor
;
34
35
public
:
36
// Default constructor
37
BondOrderAssignment
(
AssignBondOrderProcessor
* abop);
38
39
// Destructor
40
virtual
~
BondOrderAssignment
();
41
42
//
43
void
clear();
44
46
bool
apply();
47
48
//
49
int
getNumberOfNodeExpansions
()
const
{
return
node_expansions;}
50
51
//
52
int
getQueueSize
()
const
{
return
queue_size;}
53
54
// denotes whether the problem could be solved or not
55
bool
valid
;
56
57
// the result : the set of bond orders for _ALL_ original bonds
58
HashMap<Bond*, int>
bond_order_map
;
59
60
// the result part2: the atoms with n additional hydrogens
61
HashMap<Atom*, int>
number_of_virtual_hydrogens
;
62
63
// the virtual atoms and bonds that should be deleted when the next
64
// solution is applied
65
vector<Atom*>
atoms_to_delete
;
66
//vector<Bond*> bonds_to_delete;
67
68
float
total_charge
;
69
int
node_expansions
;
70
int
queue_size
;
71
72
AtomContainer
*
ac
;
73
};
74
}
75
#endif // BALL_STRUCTURE_BONDORDERS_BONDORDERASSIGNMENT_H
76
Generated by
1.8.3.1