Test test test
[alexxy/gromacs-dssp.git] / src / dssptools.cpp
index bbd856ca00e2772e146593db9214503c1e105166..73db4033b27f5ca3603bef75692636e5f98ea812 100644 (file)
@@ -94,6 +94,7 @@ void secondaryStructures::initiateSearch(const std::vector<ResInfo> &ResInfoMatr
 
 void secondaryStructures::secondaryStructuresData::setStatus(const secondaryStructureTypes secondaryStructureTypeName){
     SecondaryStructuresStatusArray[static_cast<std::size_t>(secondaryStructureTypeName)] = true;
+    SecondaryStructuresStatus = secondaryStructureTypeName;
 }
 
 void secondaryStructures::secondaryStructuresData::setStatus(const HelixPositions helixPosition, const turnsTypes turn){
@@ -112,6 +113,10 @@ HelixPositions secondaryStructures::secondaryStructuresData::getStatus(const tur
     return TurnsStatusArray[static_cast<std::size_t>(turn)];
 }
 
+secondaryStructureTypes secondaryStructures::secondaryStructuresData::getStatus() const{
+    return  SecondaryStructuresStatus;
+}
+
 void secondaryStructures::secondaryStructuresData::setBreak(secondaryStructuresData *breakPartner){
     if (breakPartners[0] == nullptr){
         breakPartners[0] = breakPartner;
@@ -291,7 +296,7 @@ void secondaryStructures::analyzeTurnsAndHelicesPatterns(){
                 for (std::size_t k {1}; k < stride; ++k){
                     if( SecondaryStructuresStatusMap[j + k].getStatus(i) == HelixPositions::None ){
                         SecondaryStructuresStatusMap[j + k].setStatus(HelixPositions::Middle, i);
-//                        SecondaryStructuresStatusMap[j + k].setStatus(secondaryStructureTypes::Turn);
+                        SecondaryStructuresStatusMap[j + k].setStatus(secondaryStructureTypes::Turn);
                     }
 
                 }
@@ -339,21 +344,21 @@ void secondaryStructures::analyzeTurnsAndHelicesPatterns(){
         }
     }
 
-    for(std::size_t i {1}; i + 1 < SecondaryStructuresStatusMap.size(); ++i){
-        if (SecondaryStructuresStatusMap[i].getStatus(secondaryStructureTypes::Loop)){
-            bool isTurn = false;
-            for(const turnsTypes &j : {turnsTypes::Turn_3, turnsTypes::Turn_4, turnsTypes::Turn_5}){
-                std::size_t stride {static_cast<std::size_t>(i) + 3};
-                for(std::size_t k {1}; k < stride; ++k){
-                    isTurn = (i >= k) && (SecondaryStructuresStatusMap[i - k].getStatus(j) == HelixPositions::Start || SecondaryStructuresStatusMap[i - k].getStatus(j) == HelixPositions::Start_AND_End) ;
-                }
-            }
+//    for(std::size_t i {1}; i + 1 < SecondaryStructuresStatusMap.size(); ++i){
+//        if (SecondaryStructuresStatusMap[i].getStatus() == secondaryStructureTypes::Loop || SecondaryStructuresStatusMap[i].getStatus(secondaryStructureTypes::Bend)){
+//            bool isTurn = false;
+//            for(const turnsTypes &j : {turnsTypes::Turn_3, turnsTypes::Turn_4, turnsTypes::Turn_5}){
+//                std::size_t stride {static_cast<std::size_t>(i) + 3};
+//                for(std::size_t k {1}; k < stride; ++k){
+//                    isTurn = (i >= k) && (SecondaryStructuresStatusMap[i - k].getStatus(j) == HelixPositions::Start || SecondaryStructuresStatusMap[i - k].getStatus(j) == HelixPositions::Start_AND_End) ;
+//                }
+//            }
 
-            if (isTurn){
-                SecondaryStructuresStatusMap[i].setStatus(secondaryStructureTypes::Turn);
-            }
-        }
-    }
+//            if (isTurn){
+//                SecondaryStructuresStatusMap[i].setStatus(secondaryStructureTypes::Turn);
+//            }
+//        }
+//    }
 
 }