From 81a3bb2bce791926165bbc7e5f9010866deabedc Mon Sep 17 00:00:00 2001
From: mkirsz <s1351949@sms.ed.ac.uk>
Date: Tue, 26 Nov 2024 13:10:39 +0000
Subject: [PATCH] Added range based loops

---
 include/tadah/mlip/st_descriptors_db.h |  6 ++++++
 src/st_descriptors_db.cpp              | 15 +++++++++++++++
 2 files changed, 21 insertions(+)

diff --git a/include/tadah/mlip/st_descriptors_db.h b/include/tadah/mlip/st_descriptors_db.h
index 7f45999..6272db8 100644
--- a/include/tadah/mlip/st_descriptors_db.h
+++ b/include/tadah/mlip/st_descriptors_db.h
@@ -38,5 +38,11 @@ struct StDescriptorsDB {
   /** Add StDescriptors to DB */
   void add(const StDescriptors &st_d);
 
+  // Methods to enable range-based for loop
+  std::vector<StDescriptors>::iterator begin();
+  std::vector<StDescriptors>::iterator end();
+  std::vector<StDescriptors>::const_iterator begin() const;
+  std::vector<StDescriptors>::const_iterator end() const;
+
 };
 #endif
diff --git a/src/st_descriptors_db.cpp b/src/st_descriptors_db.cpp
index 21960ac..3dce74f 100644
--- a/src/st_descriptors_db.cpp
+++ b/src/st_descriptors_db.cpp
@@ -18,3 +18,18 @@ size_t StDescriptorsDB::size() const {
 void StDescriptorsDB::add(const StDescriptors &st_d) {
   st_descs.push_back(st_d);
 }
+std::vector<StDescriptors>::iterator StDescriptorsDB::begin() { 
+    return st_descs.begin(); 
+}
+
+std::vector<StDescriptors>::iterator StDescriptorsDB::end() { 
+    return st_descs.end(); 
+}
+
+std::vector<StDescriptors>::const_iterator StDescriptorsDB::begin() const { 
+    return st_descs.cbegin(); 
+}
+
+std::vector<StDescriptors>::const_iterator StDescriptorsDB::end() const { 
+    return st_descs.cend(); 
+}
-- 
GitLab