Victor
 All Data Structures Functions Variables Friends Pages
ScoringP2P.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 
18 #ifndef __ScoringP2P_H__
19 #define __ScoringP2P_H__
20 
21 #include <Profile.h>
22 #include <ScoringFunction.h>
23 #include <ScoringScheme.h>
24 
25 namespace Victor { namespace Align2{
26 
32  class ScoringP2P : public ScoringScheme {
33  public:
34 
35  // CONSTRUCTORS:
36 
39  Profile *pro2, ScoringFunction *fun, double cSeq);
40 
42  ScoringP2P(const ScoringP2P &orig);
43 
45  virtual ~ScoringP2P();
46 
47 
48  // OPERATORS:
49 
51  ScoringP2P& operator =(const ScoringP2P &orig);
52 
53 
54  // PREDICATES:
55 
57  virtual double scoring(int i, int j);
58 
59 
60  // MODIFIERS:
61 
63  virtual void copy(const ScoringP2P &orig);
64 
66  virtual ScoringP2P* newCopy();
67 
69  virtual void reverse();
70 
71 
72  protected:
73 
74 
75  private:
76 
77  // ATTRIBUTES:
78 
79  string seq1;
80  string seq2;
81  Profile *pro1;
82  Profile *pro2;
83  ScoringFunction *fun;
84  double cSeq;
85 
86  };
87 
88 }} // namespace
89 
90 #endif
virtual ~ScoringP2P()
Destructor.
Definition: ScoringP2P.cc:48
virtual double scoring(int i, int j)
Calculate scores to create matrix values.
Definition: ScoringP2P.cc:75
virtual void reverse()
Reverse template sequence and profile.
Definition: ScoringP2P.cc:109
virtual void copy(const ScoringP2P &orig)
Copy orig object to this object ("deep copy").
Definition: ScoringP2P.cc:89
Calculate scores for profile to profile alignment.
Definition: ScoringP2P.h:32
Calculate a frequency profile or PSSM.
Definition: Profile.h:35
Implement a standard substitution matrix.
Definition: SubMatrix.h:30
Structure * str
Pointer to Structure.
Definition: ScoringScheme.h:80
ScoringP2P & operator=(const ScoringP2P &orig)
Assignment operator.
Definition: ScoringP2P.cc:59
Base class for printing alignments.
Definition: AlignmentData.h:35
SubMatrix * sub
Substitution matrix.
Definition: ScoringScheme.h:78
Base class for structural scores.
Definition: Structure.h:32
ScoringP2P(SubMatrix *sub, AlignmentData *ad, Structure *str, Profile *pro1, Profile *pro2, ScoringFunction *fun, double cSeq)
Default constructor.
Definition: ScoringP2P.cc:37
AlignmentData * ad
Pointer to AlignmentData.
Definition: ScoringScheme.h:79
Base class for scoring functions.
Definition: ScoringFunction.h:31
Base class for scoring schemes.
Definition: ScoringScheme.h:34
virtual ScoringP2P * newCopy()
Construct a new "deep copy" of this object.
Definition: ScoringP2P.cc:103