KineticState.h
Go to the documentation of this file.
1 //
2 // This file is part of the FFEA simulation package
3 //
4 // Copyright (c) by the Theory and Development FFEA teams,
5 // as they appear in the README.md file.
6 //
7 // FFEA is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU General Public License as published by
9 // the Free Software Foundation, either version 3 of the License, or
10 // (at your option) any later version.
11 //
12 // FFEA is distributed in the hope that it will be useful,
13 // but WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // GNU General Public License for more details.
16 //
17 // You should have received a copy of the GNU General Public License
18 // along with FFEA. If not, see <http://www.gnu.org/licenses/>.
19 //
20 // To help us fund FFEA development, we humbly ask that you cite
21 // the research papers on the package.
22 //
23 
24 #ifndef KINETICSTATES_H_INCLUDED
25 #define KINETICSTATES_H_INCLUDED
26 
27 #define FFEA_KINETIC_STATE_UNBOUND 0
28 #define FFEA_KINETIC_STATE_BOUND 1
29 
30 #include "FFEA_return_codes.h"
31 #include "BindingSite.h"
32 
33 #include <stdio.h>
34 #include <iostream>
35 #include <set>
36 using namespace std;
37 
38 class KineticState {
39 
40  public:
41 
42  KineticState();
43 
44  ~KineticState();
45 
46  int init();
47  int init(int conf_index, int from, int to);
48 
49  int get_conformation_index();
50  int get_base_bsite_type();
51  int get_target_bsite_type();
52  bool is_bound();
53  void set_sites(BindingSite *base, BindingSite *target);
54  BindingSite * get_base_site();
55  BindingSite * get_target_site();
56 
57  private:
58 
61 
63  int base;
64 
66  int target;
67 
69  bool bound;
70 
72 
73  BindingSite *base_site, *target_site;
75 };
76 #endif
Definition: BindingSite.h:41
int conformation_index
The active conformation in this state.
Definition: KineticState.h:60
STL namespace.
Definition: KineticState.h:38
int base
The active binding site type in this blob in this state.
Definition: KineticState.h:63
int target
The target binding site type on any blob in this state.
Definition: KineticState.h:66
BindingSite * target_site
Definition: KineticState.h:73
bool bound
Is the base site type bound in this state?
Definition: KineticState.h:69