From 6d740ca85680f45aec6e347af3f8d1c95f665702 Mon Sep 17 00:00:00 2001
From: joanvallve <jvallve@iri.upc.edu>
Date: Fri, 5 Mar 2021 16:01:10 +0100
Subject: [PATCH] check state includes structure and take only structure states

---
 src/frame/frame_base.cpp | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/src/frame/frame_base.cpp b/src/frame/frame_base.cpp
index 549b14352..4b278bf8b 100644
--- a/src/frame/frame_base.cpp
+++ b/src/frame/frame_base.cpp
@@ -21,13 +21,11 @@ FrameBase::FrameBase(const TimeStamp& _ts,
         frame_id_(++frame_id_count_),
         time_stamp_(_ts)
 {
-    for (const auto& pair_key_vec : _state)
-    {
-        const auto& key  = pair_key_vec.first;
-        const auto& vec  = pair_key_vec.second;
-
-        StateBlockPtr sb = FactoryStateBlock::create(string(1,key), vec, false); // false = non fixed
+    assert(_state.includesStructure(_frame_structure) && "_state does not include all keys of _frame_structure");
 
+    for (auto key : getStructure())
+    {
+        StateBlockPtr sb = FactoryStateBlock::create(string(1,key), _state.at(key), false); // false = non fixed
         addStateBlock(key, sb, getProblem());
     }
 }
-- 
GitLab