Commit b450cdf1 by maarten

backup

git-svn-id: svn+ssh://gitlab/srv/svn-repos/pdb-redo/trunk@326 a1961a4f-ab94-4bcc-80e8-33b5a54de466
parent f96499cd
...@@ -65,6 +65,8 @@ class DSSP ...@@ -65,6 +65,8 @@ class DSSP
SecondaryStructureType operator()(const std::string& inAsymID, int inSeqID) const; SecondaryStructureType operator()(const std::string& inAsymID, int inSeqID) const;
SecondaryStructureType operator()(const Monomer& m) const; SecondaryStructureType operator()(const Monomer& m) const;
bool isAlphaHelixEndBeforeStart(const Monomer& m) const;
private: private:
struct DSSPImpl* mImpl; struct DSSPImpl* mImpl;
}; };
......
...@@ -858,4 +858,22 @@ SecondaryStructureType DSSP::operator()(const Monomer& m) const ...@@ -858,4 +858,22 @@ SecondaryStructureType DSSP::operator()(const Monomer& m) const
return operator()(m.asymID(), m.seqID()); return operator()(m.asymID(), m.seqID());
} }
bool DSSP::isAlphaHelixEndBeforeStart(const Monomer& m) const
{
auto asymID = m.asymID();
auto seqID = m.seqID();
auto i = find_if(mImpl->mResidues.begin(), mImpl->mResidues.end(),
[&](auto& r) { return r.mM.asymID() == asymID and r.mM.seqID() == seqID; });
bool result = false;
if (i != mImpl->mResidues.end() and i + 1 != mImpl->mResidues.end())
result = i->GetHelixFlag(4) == helixEnd and (i + 1)->GetHelixFlag(4) == helixStart;
else if (VERBOSE)
cerr << "Could not find secondary structure for " << asymID << ':' << seqID << endl;
return result;
}
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment