Victor
 All Data Structures Functions Variables Friends Pages
Loader.h
1 /* This file is part of Victor.
2 
3  Victor is free software: you can redistribute it and/or modify
4  it under the terms of the GNU General Public License as published by
5  the Free Software Foundation, either version 3 of the License, or
6  (at your option) any later version.
7 
8  Victor is distributed in the hope that it will be useful,
9  but WITHOUT ANY WARRANTY; without even the implied warranty of
10  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11  GNU General Public License for more details.
12 
13  You should have received a copy of the GNU General Public License
14  along with Victor. If not, see <http://www.gnu.org/licenses/>.
15  */
16 
17 #ifndef _LOADER_H_
18 #define _LOADER_H_
19 
20 // Includes:
21 #include <Debug.h>
22 
23 // Global constants, typedefs, etc. (to avoid):
24 
25 namespace Victor { namespace Biopool {
26 
27  class Group;
28  class SideChain;
29  class AminoAcid;
30  class Spacer;
31  class Ligand;
32  class LigandSet;
33  class Protein;
34  class Nucleotide;
35 
39  class Loader {
40  public:
41 
42  // CONSTRUCTORS/DESTRUCTOR:
43 
44  Loader() {
45  PRINT_NAME;
46  }
47  // this class uses the implicit copy operator.
48 
49  virtual ~Loader() {
50  PRINT_NAME;
51  };
52 
53  // MODIFIERS:
54 
55  virtual void loadGroup(Group& group) {
56  PRINT_NAME;
57  };
58 
59  virtual void loadSideChain(SideChain& node) {
60  PRINT_NAME;
61  };
62 
63  virtual void loadAminoAcid(AminoAcid& node) {
64  PRINT_NAME;
65  };
66 
67  virtual void loadSpacer(Spacer& node) {
68  PRINT_NAME;
69  };
70 
71  virtual void loadLigand(Ligand& node) {
72  PRINT_NAME;
73  };
74 
75  virtual void loadLigandSet(LigandSet& node) {
76  PRINT_NAME;
77  };
78 
79  virtual void loadProtein(Protein& node) {
80  PRINT_NAME;
81  };
82 
83  virtual void loadNucleotide(Nucleotide& node) {
84  PRINT_NAME;
85  };
86  protected:
87 
88  private:
89 
90  };
91 
92 
93 }} //namespace
94 #endif //_LOADER_H_
95 
96 
97 
98 
99 
100 
101 
102 
103 
Implements a simple nucleotide.
Definition: Nucleotide.h:37
This class implements a side chain.
Definition: SideChain.h:32
Is a container of Polymers (a component of components). Each chain in a PDB (a Protein object) corres...
Definition: Protein.h:36
This class implements a simple chemical group.
Definition: Group.h:35
Base class for loading components (Atoms, Groups, etc.).
Definition: Loader.h:39
class implements methods to manage the ligandSet
Definition: LigandSet.h:37
Implements methods to verify the ligand properties.
Definition: Ligand.h:38
It mplements a simple amino acid.
Definition: AminoAcid.h:43
Implements a "Spacer" for a protein chain. Includes methods to obtain values from the atoms and its p...
Definition: Spacer.h:42