asdsadasdsadsadasdasd
[alexxy/gromacs-dssp.git] / src / dssptools.h
index b822eb18548e68dca7245be083ef0257abe1f90c..77309f62b2c1d3cebe6a2cdb24cd1be5f3829e91 100644 (file)
@@ -125,7 +125,7 @@ enum class secondaryStructureTypes : std::size_t { // TODO
     Helis_PPII, // P
     Helix_5, // I
     Helix_3, // G
-    Bulge, // B
+    Bridge, // B
     Ladder, // E
     Helix_4, // H
     Count
@@ -169,13 +169,14 @@ public:
         bool                                getStatus(const secondaryStructureTypes secondaryStructureTypeName) const, isBreakPartnerWith(const secondaryStructuresData *partner) const;
         HelixPositions                      getStatus(const turnsTypes turn) const;
         secondaryStructureTypes             getStatus() const;
-        void                                setBreak(secondaryStructuresData *breakPartner);
+        void                                setBreak(secondaryStructuresData *breakPartner), setBridge(secondaryStructuresData *bridgePartner, bridgeTypes bridgeType);
+        bool                                hasBridges() const, isBridgePartnerWith(secondaryStructuresData *bridgePartner, bridgeTypes bridgeType) const;
     private:
         std::array<bool, static_cast<std::size_t>(secondaryStructureTypes::Count)>  SecondaryStructuresStatusArray{ true, 0, 0, 0, 0, 0, 0 };
         secondaryStructuresData                                        *breakPartners[2]{nullptr, nullptr};
+        secondaryStructuresData                                        *bridgePartners[2]{nullptr, nullptr};
         secondaryStructureTypes                                         SecondaryStructuresStatus {secondaryStructureTypes::Loop};
         std::array<HelixPositions, static_cast<std::size_t>(turnsTypes::Count)>  TurnsStatusArray {HelixPositions::None, HelixPositions::None, HelixPositions::None};
-        std::array<bool, static_cast<std::size_t>(bridgeTypes::Count)>  BridgesStatusArray{ 0, 0 };
     };
 
     std::vector<secondaryStructuresData>     SecondaryStructuresStatusMap;