Loading...
Searching...
No Matches
nucleotideMapping.h
Go to the documentation of this file.
#ifndef BALL_STRUCTURE_NUCLEOTIDEMAPPING_H
#define BALL_STRUCTURE_NUCLEOTIDEMAPPING_H
#include <string>
#include <BALL/DATATYPE/hashMap.h>
namespace BALL
{
class Chain;
class Residue;
class BALL_EXPORT NucleotideMapping
{
public:
typedef std::pair<const std::string, const std::string> Alignment;
NucleotideMapping();
static NucleotideMapping assignNaively(Chain& a, Chain& b, unsigned int offset_a = 0, unsigned int offset_b = 0);
static NucleotideMapping assignFromDistances(Chain& a, Chain& b);
static NucleotideMapping assignFromAlignment(Chain& a, Chain& b, const Alignment& alignment);
Chain* getFirstStrand() const;
Chain* getSecondStrand() const;
Residue* firstToSecond(Residue* a) const;
Residue* secondToFirst(Residue* b) const;
private:
typedef HashMap<Residue*, Residue*> NucleotideMap;
NucleotideMapping(Chain& a, Chain& b, const NucleotideMap& a_to_b, const NucleotideMap& b_to_a);
Chain* a_;
Chain* b_;
NucleotideMap a_to_b_;
NucleotideMap b_to_a_;
};
}
#endif //BALL_STRUCTURE_NUCLEOTIDEMAPPING_H
BALL_EXPORT
#define BALL_EXPORT
Definition COMMON/global.h:50
BALL::Chain
Definition chain.h:32
BALL::HashMap
HashMap class based on the STL map (containing serveral convenience functions).
Definition hashMap.h:74
BALL::NucleotideMapping::assignFromDistances
static NucleotideMapping assignFromDistances(Chain &a, Chain &b)
BALL::NucleotideMapping::secondToFirst
Residue * secondToFirst(Residue *b) const
BALL::NucleotideMapping::firstToSecond
Residue * firstToSecond(Residue *a) const
BALL::NucleotideMapping::assignNaively
static NucleotideMapping assignNaively(Chain &a, Chain &b, unsigned int offset_a=0, unsigned int offset_b=0)
BALL::NucleotideMapping::getFirstStrand
Chain * getFirstStrand() const
BALL::NucleotideMapping::NucleotideMapping
NucleotideMapping()
BALL::NucleotideMapping::getSecondStrand
Chain * getSecondStrand() const
BALL::NucleotideMapping::assignFromAlignment
static NucleotideMapping assignFromAlignment(Chain &a, Chain &b, const Alignment &alignment)
BALL::NucleotideMapping::Alignment
std::pair< const std::string, const std::string > Alignment
Definition nucleotideMapping.h:24
BALL::Residue
Definition residue.h:38
hashMap.h
BALL
Definition constants.h:13