diff --git a/yaml_templates/NONE.yaml b/yaml_templates/NONE.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..21882391d69233abb210ce2fe6505635e0c28e73
--- /dev/null
+++ b/yaml_templates/NONE.yaml
@@ -0,0 +1 @@
+type: "NONE"  # OPTIONAL - DOC Nothing to say here - TYPE string - OPTIONS [NONE]
\ No newline at end of file
diff --git a/yaml_templates/None.yaml b/yaml_templates/None.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..b33da9c353e6da477af3a54e5dce75bcf2c73c0a
--- /dev/null
+++ b/yaml_templates/None.yaml
@@ -0,0 +1 @@
+type: "None"  # OPTIONAL - DOC Nothing to say here - TYPE string - OPTIONS [None]
\ No newline at end of file
diff --git a/yaml_templates/TypeAndPlugin.yaml b/yaml_templates/TypeAndPlugin.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..6ddc5b493043f5669a9c2c18cbbfac094322c405
--- /dev/null
+++ b/yaml_templates/TypeAndPlugin.yaml
@@ -0,0 +1,2 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
\ No newline at end of file
diff --git a/yaml_templates/landmark/Landmark2d.yaml b/yaml_templates/landmark/Landmark2d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..42bda996fe1a7c134c60ba45285a035e06400879
--- /dev/null
+++ b/yaml_templates/landmark/Landmark2d.yaml
@@ -0,0 +1,16 @@
+type: "whatever"  # DOC Type of the landmark - TYPE string
+plugin: "core"  # OPTIONAL - DOC Name of the wolf plugin where the landmark type is implemented. - TYPE string
+id: 0  # DOC Unique id of the landmark. - TYPE int
+external_id: 0  # OPTIONAL - DOC Id given by an external tracker via capture. Missing or -1 means untracked. - TYPE int
+external_type: 0  # OPTIONAL - DOC Type given by an external identifier via capture (for example: 1: chair, 2: person...). Missing or -1 means uknown. - TYPE int
+states:
+  P:
+    value: [0.0, 0.0]  # DOC A vector containing the position (x, y) [m]. - TYPE Vector2d
+    prior:
+      mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+      factor_std: [0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector2d
+  O:
+    value: [0.0]  # DOC A vector containing the orientation, yaw [rad]. - TYPE Vector1d
+    prior:
+      mode: "fix"  # DOC It can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+      factor_std: [0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [rad]. - TYPE Vector1d
\ No newline at end of file
diff --git a/yaml_templates/landmark/Landmark3d.yaml b/yaml_templates/landmark/Landmark3d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..40a6bbf107dc7077a78db61fc30fd37a3ed7c1c4
--- /dev/null
+++ b/yaml_templates/landmark/Landmark3d.yaml
@@ -0,0 +1,16 @@
+type: "whatever"  # DOC Type of the landmark - TYPE string
+plugin: "core"  # OPTIONAL - DOC Name of the wolf plugin where the landmark type is implemented. - TYPE string
+id: 0  # DOC Unique id of the landmark. - TYPE int
+external_id: 0  # OPTIONAL - DOC Id given by an external tracker via capture. Missing or -1 means untracked. - TYPE int
+external_type: 0  # OPTIONAL - DOC Type given by an external identifier via capture (for example: 1: chair, 2: person...). Missing or -1 means uknown. - TYPE int
+states:
+  P:
+    value: [0.0, 0.0, 0.0]  # DOC A vector containing the position (x, y, z) [m]. - TYPE Vector3d
+    prior:
+      mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+      factor_std: [0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector3d
+  O:
+    value: [0.0, 0.0, 0.0, 0.0]  # DOC A vector containing the quaternion values (x, y, z, w) - TYPE Vector4d
+    prior:
+      mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+      factor_std: [0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [rad]. - TYPE Vector3d
\ No newline at end of file
diff --git a/yaml_templates/landmark/LandmarkBase.yaml b/yaml_templates/landmark/LandmarkBase.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..85fb4f84ca9500b3544250cd3284d9c6ebc5256c
--- /dev/null
+++ b/yaml_templates/landmark/LandmarkBase.yaml
@@ -0,0 +1,5 @@
+type: "whatever"  # DOC Type of the landmark - TYPE string
+plugin: "core"  # OPTIONAL - DOC Name of the wolf plugin where the landmark type is implemented. - TYPE string
+id: 0  # DOC Unique id of the landmark. - TYPE int
+external_id: 0  # OPTIONAL - DOC Id given by an external tracker via capture. Missing or -1 means untracked. - TYPE int
+external_type: 0  # OPTIONAL - DOC Type given by an external identifier via capture (for example: 1: chair, 2: person...). Missing or -1 means uknown. - TYPE int
\ No newline at end of file
diff --git a/yaml_templates/map/MapBase.yaml b/yaml_templates/map/MapBase.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..2088256474350c13232b360eb06149ed42da8b50
--- /dev/null
+++ b/yaml_templates/map/MapBase.yaml
@@ -0,0 +1,7 @@
+type: "whatever"  # DOC Type of the Map used in the problem. - TYPE string
+plugin: "whatever"  # DOC Name of the wolf plugin where the map type is implemented. - TYPE string
+landmarks:
+  - type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+    follow: some/path/to/derived/type/parameters.yaml
+  - type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+    follow: some/path/to/derived/type/parameters.yaml
\ No newline at end of file
diff --git a/yaml_templates/none.yaml b/yaml_templates/none.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..05c60e5cda02648613796dce0da2e237b6d24a05
--- /dev/null
+++ b/yaml_templates/none.yaml
@@ -0,0 +1 @@
+type: "none"  # OPTIONAL - DOC Nothing to say here - TYPE string - OPTIONS [none]
\ No newline at end of file
diff --git a/yaml_templates/problem/Problem.yaml b/yaml_templates/problem/Problem.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..0816b8cd324fd06e25434cfeaaef963a476aa19e
--- /dev/null
+++ b/yaml_templates/problem/Problem.yaml
@@ -0,0 +1,18 @@
+problem:
+  tree_manager:
+    type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+    follow: some/path/to/derived/type/parameters.yaml
+  dimension: 2  # DOC Dimension of the problem. "2" for 2D or "3" for 3D - TYPE int - OPTIONS [2, 3]
+map:
+  type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+  follow: some/path/to/derived/type/parameters.yaml
+sensors:
+  - type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+    follow: some/path/to/derived/type/parameters.yaml
+  - type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+    follow: some/path/to/derived/type/parameters.yaml
+processors:
+  - type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+    follow: some/path/to/derived/type/parameters.yaml
+  - type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+    follow: some/path/to/derived/type/parameters.yaml
\ No newline at end of file
diff --git a/yaml_templates/problem/Problem2d.yaml b/yaml_templates/problem/Problem2d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..3f0486b66c882ab8cb266f49db3e8a4f3130065a
--- /dev/null
+++ b/yaml_templates/problem/Problem2d.yaml
@@ -0,0 +1,34 @@
+problem:
+  tree_manager:
+    type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+    follow: some/path/to/derived/type/parameters.yaml
+  dimension: 2  # DOC Dimension of the problem: "2" for 2D - TYPE int - OPTIONS [2]
+  first_frame:
+    P:
+      value: [0.0, 0.0]  # DOC A vector containing the position (x, y) [m]. - TYPE Vector2d
+      prior:
+        mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+        factor_std: [0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector2d
+    O:
+      value: [0.0]  # DOC A vector containing the orientation, yaw [rad]. - TYPE Vector1d
+      prior:
+        mode: "fix"  # DOC It can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+        factor_std: [0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [rad]. - TYPE Vector1d
+    V:
+      value: [0.0, 0.0]  # DOC A vector containing the linear velocity components (x, y) [m]. - TYPE Vector2d
+      prior:
+        mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+        factor_std: [0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector2d
+map:
+  type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+  follow: some/path/to/derived/type/parameters.yaml
+sensors:
+  - type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+    follow: some/path/to/derived/type/parameters.yaml
+  - type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+    follow: some/path/to/derived/type/parameters.yaml
+processors:
+  - type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+    follow: some/path/to/derived/type/parameters.yaml
+  - type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+    follow: some/path/to/derived/type/parameters.yaml
\ No newline at end of file
diff --git a/yaml_templates/problem/Problem3d.yaml b/yaml_templates/problem/Problem3d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..459edd0581dd6660d048789e1c19a2d93b3a8a66
--- /dev/null
+++ b/yaml_templates/problem/Problem3d.yaml
@@ -0,0 +1,34 @@
+problem:
+  tree_manager:
+    type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+    follow: some/path/to/derived/type/parameters.yaml
+  dimension: 3  # DOC Dimension of the problem: "3" for 3D - TYPE int - OPTIONS [3]
+  first_frame:
+    P:
+      value: [0.0, 0.0, 0.0]  # DOC A vector containing the position (x, y, z) [m]. - TYPE Vector3d
+      prior:
+        mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+        factor_std: [0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector3d
+    O:
+      value: [0.0, 0.0, 0.0, 0.0]  # DOC A vector containing the quaternion values (x, y, z, w) - TYPE Vector4d
+      prior:
+        mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+        factor_std: [0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [rad]. - TYPE Vector3d
+    V:
+      value: [0.0, 0.0, 0.0]  # DOC A vector containing the linear velocity components (x, y, z) [m]. - TYPE Vector3d
+      prior:
+        mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+        factor_std: [0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector3d
+map:
+  type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+  follow: some/path/to/derived/type/parameters.yaml
+sensors:
+  - type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+    follow: some/path/to/derived/type/parameters.yaml
+  - type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+    follow: some/path/to/derived/type/parameters.yaml
+processors:
+  - type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+    follow: some/path/to/derived/type/parameters.yaml
+  - type: "DerivedType"  # DOC String corresponding to the name of the object class (and its schema file).
+    follow: some/path/to/derived/type/parameters.yaml
\ No newline at end of file
diff --git a/yaml_templates/problem/StateO2d.yaml b/yaml_templates/problem/StateO2d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..57f6c739d307fe87d73b6959c79b64c93aea4beb
--- /dev/null
+++ b/yaml_templates/problem/StateO2d.yaml
@@ -0,0 +1,4 @@
+value: [0.0]  # DOC A vector containing the orientation, yaw [rad]. - TYPE Vector1d
+prior:
+  mode: "fix"  # DOC It can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [rad]. - TYPE Vector1d
\ No newline at end of file
diff --git a/yaml_templates/problem/StateO3d.yaml b/yaml_templates/problem/StateO3d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..7d2d34cb4dc1921600837f0a20d7aeb1208395b1
--- /dev/null
+++ b/yaml_templates/problem/StateO3d.yaml
@@ -0,0 +1,4 @@
+value: [0.0, 0.0, 0.0, 0.0]  # DOC A vector containing the quaternion values (x, y, z, w) - TYPE Vector4d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [rad]. - TYPE Vector3d
\ No newline at end of file
diff --git a/yaml_templates/problem/StateP2d.yaml b/yaml_templates/problem/StateP2d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..9dad0aa18f48cfc73b18c38c33365613f85f7a3e
--- /dev/null
+++ b/yaml_templates/problem/StateP2d.yaml
@@ -0,0 +1,4 @@
+value: [0.0, 0.0]  # DOC A vector containing the position (x, y) [m]. - TYPE Vector2d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector2d
\ No newline at end of file
diff --git a/yaml_templates/problem/StateP3d.yaml b/yaml_templates/problem/StateP3d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..0b4566aa2e1dd20190665968d62e555ecbbe74b8
--- /dev/null
+++ b/yaml_templates/problem/StateP3d.yaml
@@ -0,0 +1,4 @@
+value: [0.0, 0.0, 0.0]  # DOC A vector containing the position (x, y, z) [m]. - TYPE Vector3d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector3d
\ No newline at end of file
diff --git a/yaml_templates/problem/StateV2d.yaml b/yaml_templates/problem/StateV2d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..f8a55ddc39a6a218f70ef453faea3a06749795f7
--- /dev/null
+++ b/yaml_templates/problem/StateV2d.yaml
@@ -0,0 +1,4 @@
+value: [0.0, 0.0]  # DOC A vector containing the linear velocity components (x, y) [m]. - TYPE Vector2d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector2d
\ No newline at end of file
diff --git a/yaml_templates/problem/StateV3d.yaml b/yaml_templates/problem/StateV3d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..9d8ef07dd90fe722ad7bb3d5604d26df4fe5bb21
--- /dev/null
+++ b/yaml_templates/problem/StateV3d.yaml
@@ -0,0 +1,4 @@
+value: [0.0, 0.0, 0.0]  # DOC A vector containing the linear velocity components (x, y, z) [m]. - TYPE Vector3d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector3d
\ No newline at end of file
diff --git a/yaml_templates/processor/MotionProvider.yaml b/yaml_templates/processor/MotionProvider.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..494d64098a1b1fa29f03b25c39b80fe3525880d4
--- /dev/null
+++ b/yaml_templates/processor/MotionProvider.yaml
@@ -0,0 +1,2 @@
+state_provider: false  # DOC If the processor is used by the problem as provider of state. - TYPE bool
+state_provider_order: 0.0  # MANDATORY if $state_provider - DOC The order number of this processor when problem gets the state (only used if state_provider = true). Two processors cannot have the same priority (if so, when installing the second is increased). - TYPE double
\ No newline at end of file
diff --git a/yaml_templates/processor/ProcessorBase.yaml b/yaml_templates/processor/ProcessorBase.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..d74b27af85c43b3bcf91f7f643f7277d51bd9a29
--- /dev/null
+++ b/yaml_templates/processor/ProcessorBase.yaml
@@ -0,0 +1,7 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The processor"s name. It has to be unique. - TYPE string
+time_tolerance: 0.0  # DOC Maximum time difference between a Keyframe time stamp and a particular Capture of this processor to allow assigning this Capture to the Keyframe. [s]. - TYPE double
+keyframe_vote:
+  voting_active: false  # DOC If the processor is allowed to decide to create a frame. - TYPE bool
+apply_loss_function: false  # DOC If the factors created by the processor have loss function. - TYPE bool
\ No newline at end of file
diff --git a/yaml_templates/processor/ProcessorBaseWithSensor.yaml b/yaml_templates/processor/ProcessorBaseWithSensor.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..f11771b82539f4618b9174970ac82ad5a0ffc315
--- /dev/null
+++ b/yaml_templates/processor/ProcessorBaseWithSensor.yaml
@@ -0,0 +1,8 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The processor"s name. It has to be unique. - TYPE string
+time_tolerance: 0.0  # DOC Maximum time difference between a Keyframe time stamp and a particular Capture of this processor to allow assigning this Capture to the Keyframe. [s]. - TYPE double
+keyframe_vote:
+  voting_active: false  # DOC If the processor is allowed to decide to create a frame. - TYPE bool
+apply_loss_function: false  # DOC If the factors created by the processor have loss function. - TYPE bool
+sensor_name: "whatever"  # DOC The name of the sensor corresponding to this processor. - TYPE string
\ No newline at end of file
diff --git a/yaml_templates/processor/ProcessorDiffDrive.yaml b/yaml_templates/processor/ProcessorDiffDrive.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..12587124f674a75826fff74f963ef845377fbe7d
--- /dev/null
+++ b/yaml_templates/processor/ProcessorDiffDrive.yaml
@@ -0,0 +1,15 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The processor"s name. It has to be unique. - TYPE string
+time_tolerance: 0.0  # DOC Maximum time difference between a Keyframe time stamp and a particular Capture of this processor to allow assigning this Capture to the Keyframe. [s]. - TYPE double
+keyframe_vote:
+  voting_active: false  # DOC If the processor is allowed to decide to create a frame. - TYPE bool
+  max_time_span: 0.0  # MANDATORY if $voting_active - DOC Time threshold to create a new frame [s]. - TYPE double
+  max_buff_length: 0  # MANDATORY if $voting_active - DOC Maximum size of the buffer of motions. - TYPE unsigned int
+  max_dist_traveled: 0.0  # MANDATORY if $voting_active - DOC Distance traveled threshold to create a new frame [m]. - TYPE double
+  max_angle_turned: 0.0  # MANDATORY if $voting_active - DOC Angle turned threshold to create a new frame [rad]. - TYPE double
+  cov_det: 0.0  # MANDATORY if $voting_active - DOC The determinant threshold of the covariance matrix of the integrated delta, to vote for a keyframe. - TYPE double
+apply_loss_function: false  # DOC If the factors created by the processor have loss function. - TYPE bool
+state_provider: false  # DOC If the processor is used by the problem as provider of state. - TYPE bool
+state_provider_order: 0.0  # MANDATORY if $state_provider - DOC The order number of this processor when problem gets the state (only used if state_provider = true). Two processors cannot have the same priority (if so, when installing the second is increased). - TYPE double
+unmeasured_perturbation_std: 0.0  # DOC Noise (standard deviation) of the integrated movement in the not observed directions. - TYPE double
\ No newline at end of file
diff --git a/yaml_templates/processor/ProcessorFixedWingModel.yaml b/yaml_templates/processor/ProcessorFixedWingModel.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..c70230c2bbf0bf124a1fb3a2e8568dc49e2a86ef
--- /dev/null
+++ b/yaml_templates/processor/ProcessorFixedWingModel.yaml
@@ -0,0 +1,10 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The processor"s name. It has to be unique. - TYPE string
+time_tolerance: 0.0  # DOC Maximum time difference between a Keyframe time stamp and a particular Capture of this processor to allow assigning this Capture to the Keyframe. [s]. - TYPE double
+keyframe_vote:
+  voting_active: false  # DOC If the processor is allowed to decide to create a frame. - TYPE bool
+apply_loss_function: false  # DOC If the factors created by the processor have loss function. - TYPE bool
+velocity_local: [0.0, 0.0, 0.0]  # DOC The vector with the direction of the velocity in local coordinates - TYPE Vector3d
+angle_stdev: 0.0  # DOC The standard deviation noise to create the angular residuals - TYPE double
+min_vel_norm: 0.0  # DOC The velocity norm threshold to apply factors - TYPE double
\ No newline at end of file
diff --git a/yaml_templates/processor/ProcessorLandmarkExternal.yaml b/yaml_templates/processor/ProcessorLandmarkExternal.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..5bcc168cda6d8947e857e55dc8e53f7e0030f668
--- /dev/null
+++ b/yaml_templates/processor/ProcessorLandmarkExternal.yaml
@@ -0,0 +1,19 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The processor"s name. It has to be unique. - TYPE string
+time_tolerance: 0.0  # DOC Maximum time difference between a Keyframe time stamp and a particular Capture of this processor to allow assigning this Capture to the Keyframe. [s]. - TYPE double
+keyframe_vote:
+  voting_active: false  # DOC If the processor is allowed to decide to create a frame. - TYPE bool
+  min_features_for_keyframe: 0  # MANDATORY if $voting_active - DOC Minimum number of features to vote for keyframe. - TYPE unsigned int
+  time_span: 0.0  # DOC the time span from the last keyframe to vote for a new keyframe (sufficient condition) - TYPE double
+  new_features_for_keyframe: 0  # DOC the amount of new features sufficient to create a new keyframe (sufficient condition) - TYPE unsigned int
+apply_loss_function: false  # DOC If the factors created by the processor have loss function. - TYPE bool
+max_new_features: 0  # DOC Maximum number of new features to be processed when adding a keyframe (-1=unlimited. 0=none.) - TYPE int
+quality_th: 0.0  # DOC The minimum quality to consider the detection - TYPE double
+track_length_th: 0  # DOC Minimum track length to emplace factors (necessary condition) - TYPE unsigned int
+use_orientation: false  # DOC If the orientation measurement is considered when emplacing factors - TYPE bool
+match_dist_th_id: 0.0  # DOC Matching distance threshold to previous detection considering motion (necessary condition) when ID matches - TYPE double
+match_dist_th_type: 0.0  # DOC Matching distance threshold to previous detection considering motion (necessary condition) when TYPE matches - TYPE double
+match_dist_th_unknown: 0.0  # DOC Matching distance threshold to previous detection considering motion (necessary condition) when no ID/TYPE information - TYPE double
+close_loops_by_id: false  # DOC Close loop if ID matches - TYPE bool
+close_loops_by_type: false  # DOC Close loop if TYPE matches if distance check holds (match_dist_th_type) - TYPE bool
\ No newline at end of file
diff --git a/yaml_templates/processor/ProcessorLoopClosure.yaml b/yaml_templates/processor/ProcessorLoopClosure.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..34b901a8962d35838d32ac2748782717168ccfe7
--- /dev/null
+++ b/yaml_templates/processor/ProcessorLoopClosure.yaml
@@ -0,0 +1,8 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The processor"s name. It has to be unique. - TYPE string
+time_tolerance: 0.0  # DOC Maximum time difference between a Keyframe time stamp and a particular Capture of this processor to allow assigning this Capture to the Keyframe. [s]. - TYPE double
+keyframe_vote:
+  voting_active: false  # DOC If the processor is allowed to decide to create a frame. - TYPE bool
+apply_loss_function: false  # DOC If the factors created by the processor have loss function. - TYPE bool
+max_loops: 0  # DOC The maximum amount of loops that can be closed each keyframe callback. -1 (or any negative value) is unlimited loops. - TYPE int
\ No newline at end of file
diff --git a/yaml_templates/processor/ProcessorMotion.yaml b/yaml_templates/processor/ProcessorMotion.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..6c0c9333f20cc119c7c958d0d472fe0c9357e1cd
--- /dev/null
+++ b/yaml_templates/processor/ProcessorMotion.yaml
@@ -0,0 +1,14 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The processor"s name. It has to be unique. - TYPE string
+time_tolerance: 0.0  # DOC Maximum time difference between a Keyframe time stamp and a particular Capture of this processor to allow assigning this Capture to the Keyframe. [s]. - TYPE double
+keyframe_vote:
+  voting_active: false  # DOC If the processor is allowed to decide to create a frame. - TYPE bool
+  max_time_span: 0.0  # MANDATORY if $voting_active - DOC Time threshold to create a new frame [s]. - TYPE double
+  max_buff_length: 0  # MANDATORY if $voting_active - DOC Maximum size of the buffer of motions. - TYPE unsigned int
+  max_dist_traveled: 0.0  # MANDATORY if $voting_active - DOC Distance traveled threshold to create a new frame [m]. - TYPE double
+  max_angle_turned: 0.0  # MANDATORY if $voting_active - DOC Angle turned threshold to create a new frame [rad]. - TYPE double
+apply_loss_function: false  # DOC If the factors created by the processor have loss function. - TYPE bool
+state_provider: false  # DOC If the processor is used by the problem as provider of state. - TYPE bool
+state_provider_order: 0.0  # MANDATORY if $state_provider - DOC The order number of this processor when problem gets the state (only used if state_provider = true). Two processors cannot have the same priority (if so, when installing the second is increased). - TYPE double
+unmeasured_perturbation_std: 0.0  # DOC Noise (standard deviation) of the integrated movement in the not observed directions. - TYPE double
\ No newline at end of file
diff --git a/yaml_templates/processor/ProcessorOdom2d.yaml b/yaml_templates/processor/ProcessorOdom2d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..12587124f674a75826fff74f963ef845377fbe7d
--- /dev/null
+++ b/yaml_templates/processor/ProcessorOdom2d.yaml
@@ -0,0 +1,15 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The processor"s name. It has to be unique. - TYPE string
+time_tolerance: 0.0  # DOC Maximum time difference between a Keyframe time stamp and a particular Capture of this processor to allow assigning this Capture to the Keyframe. [s]. - TYPE double
+keyframe_vote:
+  voting_active: false  # DOC If the processor is allowed to decide to create a frame. - TYPE bool
+  max_time_span: 0.0  # MANDATORY if $voting_active - DOC Time threshold to create a new frame [s]. - TYPE double
+  max_buff_length: 0  # MANDATORY if $voting_active - DOC Maximum size of the buffer of motions. - TYPE unsigned int
+  max_dist_traveled: 0.0  # MANDATORY if $voting_active - DOC Distance traveled threshold to create a new frame [m]. - TYPE double
+  max_angle_turned: 0.0  # MANDATORY if $voting_active - DOC Angle turned threshold to create a new frame [rad]. - TYPE double
+  cov_det: 0.0  # MANDATORY if $voting_active - DOC The determinant threshold of the covariance matrix of the integrated delta, to vote for a keyframe. - TYPE double
+apply_loss_function: false  # DOC If the factors created by the processor have loss function. - TYPE bool
+state_provider: false  # DOC If the processor is used by the problem as provider of state. - TYPE bool
+state_provider_order: 0.0  # MANDATORY if $state_provider - DOC The order number of this processor when problem gets the state (only used if state_provider = true). Two processors cannot have the same priority (if so, when installing the second is increased). - TYPE double
+unmeasured_perturbation_std: 0.0  # DOC Noise (standard deviation) of the integrated movement in the not observed directions. - TYPE double
\ No newline at end of file
diff --git a/yaml_templates/processor/ProcessorOdom3d.yaml b/yaml_templates/processor/ProcessorOdom3d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..6c0c9333f20cc119c7c958d0d472fe0c9357e1cd
--- /dev/null
+++ b/yaml_templates/processor/ProcessorOdom3d.yaml
@@ -0,0 +1,14 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The processor"s name. It has to be unique. - TYPE string
+time_tolerance: 0.0  # DOC Maximum time difference between a Keyframe time stamp and a particular Capture of this processor to allow assigning this Capture to the Keyframe. [s]. - TYPE double
+keyframe_vote:
+  voting_active: false  # DOC If the processor is allowed to decide to create a frame. - TYPE bool
+  max_time_span: 0.0  # MANDATORY if $voting_active - DOC Time threshold to create a new frame [s]. - TYPE double
+  max_buff_length: 0  # MANDATORY if $voting_active - DOC Maximum size of the buffer of motions. - TYPE unsigned int
+  max_dist_traveled: 0.0  # MANDATORY if $voting_active - DOC Distance traveled threshold to create a new frame [m]. - TYPE double
+  max_angle_turned: 0.0  # MANDATORY if $voting_active - DOC Angle turned threshold to create a new frame [rad]. - TYPE double
+apply_loss_function: false  # DOC If the factors created by the processor have loss function. - TYPE bool
+state_provider: false  # DOC If the processor is used by the problem as provider of state. - TYPE bool
+state_provider_order: 0.0  # MANDATORY if $state_provider - DOC The order number of this processor when problem gets the state (only used if state_provider = true). Two processors cannot have the same priority (if so, when installing the second is increased). - TYPE double
+unmeasured_perturbation_std: 0.0  # DOC Noise (standard deviation) of the integrated movement in the not observed directions. - TYPE double
\ No newline at end of file
diff --git a/yaml_templates/processor/ProcessorPose2d.yaml b/yaml_templates/processor/ProcessorPose2d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..d74b27af85c43b3bcf91f7f643f7277d51bd9a29
--- /dev/null
+++ b/yaml_templates/processor/ProcessorPose2d.yaml
@@ -0,0 +1,7 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The processor"s name. It has to be unique. - TYPE string
+time_tolerance: 0.0  # DOC Maximum time difference between a Keyframe time stamp and a particular Capture of this processor to allow assigning this Capture to the Keyframe. [s]. - TYPE double
+keyframe_vote:
+  voting_active: false  # DOC If the processor is allowed to decide to create a frame. - TYPE bool
+apply_loss_function: false  # DOC If the factors created by the processor have loss function. - TYPE bool
\ No newline at end of file
diff --git a/yaml_templates/processor/ProcessorPose3d.yaml b/yaml_templates/processor/ProcessorPose3d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..d74b27af85c43b3bcf91f7f643f7277d51bd9a29
--- /dev/null
+++ b/yaml_templates/processor/ProcessorPose3d.yaml
@@ -0,0 +1,7 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The processor"s name. It has to be unique. - TYPE string
+time_tolerance: 0.0  # DOC Maximum time difference between a Keyframe time stamp and a particular Capture of this processor to allow assigning this Capture to the Keyframe. [s]. - TYPE double
+keyframe_vote:
+  voting_active: false  # DOC If the processor is allowed to decide to create a frame. - TYPE bool
+apply_loss_function: false  # DOC If the factors created by the processor have loss function. - TYPE bool
\ No newline at end of file
diff --git a/yaml_templates/processor/ProcessorTracker.yaml b/yaml_templates/processor/ProcessorTracker.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..b98f3042a02306eda3d27020487f7f1c5b9e5387
--- /dev/null
+++ b/yaml_templates/processor/ProcessorTracker.yaml
@@ -0,0 +1,9 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The processor"s name. It has to be unique. - TYPE string
+time_tolerance: 0.0  # DOC Maximum time difference between a Keyframe time stamp and a particular Capture of this processor to allow assigning this Capture to the Keyframe. [s]. - TYPE double
+keyframe_vote:
+  voting_active: false  # DOC If the processor is allowed to decide to create a frame. - TYPE bool
+  min_features_for_keyframe: 0  # MANDATORY if $voting_active - DOC Minimum number of features to vote for keyframe. - TYPE unsigned int
+apply_loss_function: false  # DOC If the factors created by the processor have loss function. - TYPE bool
+max_new_features: 0  # DOC Maximum number of new features to be processed when adding a keyframe (-1=unlimited. 0=none.) - TYPE int
\ No newline at end of file
diff --git a/yaml_templates/processor/ProcessorTrackerFeature.yaml b/yaml_templates/processor/ProcessorTrackerFeature.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..b98f3042a02306eda3d27020487f7f1c5b9e5387
--- /dev/null
+++ b/yaml_templates/processor/ProcessorTrackerFeature.yaml
@@ -0,0 +1,9 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The processor"s name. It has to be unique. - TYPE string
+time_tolerance: 0.0  # DOC Maximum time difference between a Keyframe time stamp and a particular Capture of this processor to allow assigning this Capture to the Keyframe. [s]. - TYPE double
+keyframe_vote:
+  voting_active: false  # DOC If the processor is allowed to decide to create a frame. - TYPE bool
+  min_features_for_keyframe: 0  # MANDATORY if $voting_active - DOC Minimum number of features to vote for keyframe. - TYPE unsigned int
+apply_loss_function: false  # DOC If the factors created by the processor have loss function. - TYPE bool
+max_new_features: 0  # DOC Maximum number of new features to be processed when adding a keyframe (-1=unlimited. 0=none.) - TYPE int
\ No newline at end of file
diff --git a/yaml_templates/processor/ProcessorTrackerLandmark.yaml b/yaml_templates/processor/ProcessorTrackerLandmark.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..b98f3042a02306eda3d27020487f7f1c5b9e5387
--- /dev/null
+++ b/yaml_templates/processor/ProcessorTrackerLandmark.yaml
@@ -0,0 +1,9 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The processor"s name. It has to be unique. - TYPE string
+time_tolerance: 0.0  # DOC Maximum time difference between a Keyframe time stamp and a particular Capture of this processor to allow assigning this Capture to the Keyframe. [s]. - TYPE double
+keyframe_vote:
+  voting_active: false  # DOC If the processor is allowed to decide to create a frame. - TYPE bool
+  min_features_for_keyframe: 0  # MANDATORY if $voting_active - DOC Minimum number of features to vote for keyframe. - TYPE unsigned int
+apply_loss_function: false  # DOC If the factors created by the processor have loss function. - TYPE bool
+max_new_features: 0  # DOC Maximum number of new features to be processed when adding a keyframe (-1=unlimited. 0=none.) - TYPE int
\ No newline at end of file
diff --git a/yaml_templates/sensor/SensorBase.yaml b/yaml_templates/sensor/SensorBase.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..dd2208d3483fc2b8586f73b586d0d0ba010aada4
--- /dev/null
+++ b/yaml_templates/sensor/SensorBase.yaml
@@ -0,0 +1,3 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The sensor"s name. It has to be unique. - TYPE string
\ No newline at end of file
diff --git a/yaml_templates/sensor/SensorDiffDrive.yaml b/yaml_templates/sensor/SensorDiffDrive.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..b693923be78098bd4431993f1337fc5ba81f68a2
--- /dev/null
+++ b/yaml_templates/sensor/SensorDiffDrive.yaml
@@ -0,0 +1,27 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The sensor"s name. It has to be unique. - TYPE string
+ticks_per_wheel_revolution: 0.0  # DOC Amount of sensor ticks of a whole wheel revolution (if measurement is directly radiants, put 2*PI). - TYPE double
+ticks_std_factor: 0.0  # DOC ratio of displacement variance to rotation, for odometry noise calculation. - TYPE double
+states:
+  P:
+    dynamic: false  # DOC If the position is dynamic, i.e. it changes along time. - TYPE bool
+    value: [0.0, 0.0]  # DOC A vector containing the position (x, y) [m]. - TYPE Vector2d
+    prior:
+      mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+      factor_std: [0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector2d
+    drift_std: [0.0, 0.0]  # OPTIONAL - DOC A vector containing the stdev values of the noise of the drift factor per second (only if dynamic==true) i.e. the sqrt of the diagonal elements of the covariance matrix [m/sqrt(s)]. - TYPE Vector2d
+  O:
+    dynamic: false  # DOC If the orientation is dynamic, i.e. it changes along time. - TYPE bool
+    value: [0.0]  # DOC A vector containing the orientation, yaw [rad]. - TYPE Vector1d
+    prior:
+      mode: "fix"  # DOC It can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+      factor_std: [0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [rad]. - TYPE Vector1d
+    drift_std: [0.0]  # OPTIONAL - DOC A vector containing the stdev values of the noise of the drift factor per second (only if dynamic==true) [rad/sqrt(s)]. - TYPE Vector1d
+  I:
+    dynamic: false  # DOC If the intrinsic state is dynamic, i.e. it changes along time (0: left wheel radius [m], 1: right wheel radius [m], 2: wheel separation [m]). - TYPE bool
+    value: [0.0, 0.0, 0.0]  # DOC A vector containing the intrinsic state values (0: left wheel radius [m], 1: right wheel radius [m], 2: wheel separation [m]). - TYPE Vector3d
+    prior:
+      mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+      factor_std: [0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector3d
+    drift_std: [0.0, 0.0, 0.0]  # OPTIONAL - DOC A vector containing the stdev values of the noise of the drift factor per second (only if dynamic==true) i.e. the sqrt of the diagonal elements of the covariance matrix [m/sqrt(s)]. - TYPE Vector3d
\ No newline at end of file
diff --git a/yaml_templates/sensor/SensorMotionModel.yaml b/yaml_templates/sensor/SensorMotionModel.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..dd2208d3483fc2b8586f73b586d0d0ba010aada4
--- /dev/null
+++ b/yaml_templates/sensor/SensorMotionModel.yaml
@@ -0,0 +1,3 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The sensor"s name. It has to be unique. - TYPE string
\ No newline at end of file
diff --git a/yaml_templates/sensor/SensorOdom2d.yaml b/yaml_templates/sensor/SensorOdom2d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..6c2a637cc5d4231cb772d4873d14e11598b88239
--- /dev/null
+++ b/yaml_templates/sensor/SensorOdom2d.yaml
@@ -0,0 +1,23 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The sensor"s name. It has to be unique. - TYPE string
+k_disp_to_disp: 0.0  # DOC ratio of displacement variance to displacement, for odometry noise calculation. - TYPE double
+k_disp_to_rot: 0.0  # DOC ratio of displacement variance to rotation, for odometry noise calculation. - TYPE double
+k_rot_to_rot: 0.0  # DOC ratio of rotation variance to rotation, for odometry noise calculation. - TYPE double
+min_disp_var: 0.0  # DOC minimum displacement variance, for odometry noise calculation. - TYPE double
+min_rot_var: 0.0  # DOC minimum rotation variance, for odometry noise calculation. - TYPE double
+states:
+  P:
+    dynamic: false  # DOC If the position is dynamic, i.e. it changes along time. - TYPE bool
+    value: [0.0, 0.0]  # DOC A vector containing the position (x, y) [m]. - TYPE Vector2d
+    prior:
+      mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+      factor_std: [0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector2d
+    drift_std: [0.0, 0.0]  # OPTIONAL - DOC A vector containing the stdev values of the noise of the drift factor per second (only if dynamic==true) i.e. the sqrt of the diagonal elements of the covariance matrix [m/sqrt(s)]. - TYPE Vector2d
+  O:
+    dynamic: false  # DOC If the orientation is dynamic, i.e. it changes along time. - TYPE bool
+    value: [0.0]  # DOC A vector containing the orientation, yaw [rad]. - TYPE Vector1d
+    prior:
+      mode: "fix"  # DOC It can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+      factor_std: [0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [rad]. - TYPE Vector1d
+    drift_std: [0.0]  # OPTIONAL - DOC A vector containing the stdev values of the noise of the drift factor per second (only if dynamic==true) [rad/sqrt(s)]. - TYPE Vector1d
\ No newline at end of file
diff --git a/yaml_templates/sensor/SensorOdom3d.yaml b/yaml_templates/sensor/SensorOdom3d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..b44ab8491aecabf63536b9989fb631f4705aaf77
--- /dev/null
+++ b/yaml_templates/sensor/SensorOdom3d.yaml
@@ -0,0 +1,23 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The sensor"s name. It has to be unique. - TYPE string
+k_disp_to_disp: 0.0  # DOC ratio of displacement variance to displacement, for odometry noise calculation. - TYPE double
+k_disp_to_rot: 0.0  # DOC ratio of displacement variance to rotation, for odometry noise calculation. - TYPE double
+k_rot_to_rot: 0.0  # DOC ratio of rotation variance to rotation, for odometry noise calculation. - TYPE double
+min_disp_var: 0.0  # DOC minimum displacement variance, for odometry noise calculation. - TYPE double
+min_rot_var: 0.0  # DOC minimum rotation variance, for odometry noise calculation. - TYPE double
+states:
+  P:
+    dynamic: false  # DOC If the position is dynamic, i.e. it changes along time. - TYPE bool
+    value: [0.0, 0.0, 0.0]  # DOC A vector containing the position (x, y, z) [m]. - TYPE Vector3d
+    prior:
+      mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+      factor_std: [0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector3d
+    drift_std: [0.0, 0.0, 0.0]  # OPTIONAL - DOC A vector containing the stdev values of the noise of the drift factor per second (only if dynamic==true) i.e. the sqrt of the diagonal elements of the covariance matrix [m/sqrt(s)]. - TYPE Vector3d
+  O:
+    dynamic: false  # DOC If the orientation is dynamic, i.e. it changes along time. - TYPE bool
+    value: [0.0, 0.0, 0.0, 0.0]  # DOC A vector containing the quaternion values (x, y, z, w) - TYPE Vector4d
+    prior:
+      mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+      factor_std: [0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [rad]. - TYPE Vector3d
+    drift_std: [0.0, 0.0, 0.0]  # OPTIONAL - DOC A vector containing the stdev values of the noise of the drift factor per second (only if dynamic==true), i.e. the sqrt of the diagonal elements of the covariance matrix [rad/sqrt(s)]. - TYPE Vector3d
\ No newline at end of file
diff --git a/yaml_templates/sensor/SensorPose2d.yaml b/yaml_templates/sensor/SensorPose2d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..619768c15088eefe2bd54b0dd302baaf7fe42d0e
--- /dev/null
+++ b/yaml_templates/sensor/SensorPose2d.yaml
@@ -0,0 +1,19 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The sensor"s name. It has to be unique. - TYPE string
+std_noise: [0.0, 0.0, 0.0]  # DOC Vector containing the standard deviation of the position and orientation measurements (square root of the covariance matrix diagonal). - TYPE Eigen::Vector3d
+states:
+  P:
+    dynamic: false  # DOC If the position is dynamic, i.e. it changes along time. - TYPE bool
+    value: [0.0, 0.0]  # DOC A vector containing the position (x, y) [m]. - TYPE Vector2d
+    prior:
+      mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+      factor_std: [0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector2d
+    drift_std: [0.0, 0.0]  # OPTIONAL - DOC A vector containing the stdev values of the noise of the drift factor per second (only if dynamic==true) i.e. the sqrt of the diagonal elements of the covariance matrix [m/sqrt(s)]. - TYPE Vector2d
+  O:
+    dynamic: false  # DOC If the orientation is dynamic, i.e. it changes along time. - TYPE bool
+    value: [0.0]  # DOC A vector containing the orientation, yaw [rad]. - TYPE Vector1d
+    prior:
+      mode: "fix"  # DOC It can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+      factor_std: [0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [rad]. - TYPE Vector1d
+    drift_std: [0.0]  # OPTIONAL - DOC A vector containing the stdev values of the noise of the drift factor per second (only if dynamic==true) [rad/sqrt(s)]. - TYPE Vector1d
\ No newline at end of file
diff --git a/yaml_templates/sensor/SensorPose3d.yaml b/yaml_templates/sensor/SensorPose3d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..48c5b3bbe9778dd546f0beaf3d85e62228c7c890
--- /dev/null
+++ b/yaml_templates/sensor/SensorPose3d.yaml
@@ -0,0 +1,19 @@
+type: "whatever"  # DOC The class name - TYPE string
+plugin: "whatever"  # DOC plugin where the class is implemented - TYPE string
+name: "whatever"  # DOC The sensor"s name. It has to be unique. - TYPE string
+std_noise: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0]  # DOC Vector containing the standard deviation of the position and orientation measurements (square root of the covariance matrix diagonal). - TYPE Eigen::Vector6d
+states:
+  P:
+    dynamic: false  # DOC If the position is dynamic, i.e. it changes along time. - TYPE bool
+    value: [0.0, 0.0, 0.0]  # DOC A vector containing the position (x, y, z) [m]. - TYPE Vector3d
+    prior:
+      mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+      factor_std: [0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector3d
+    drift_std: [0.0, 0.0, 0.0]  # OPTIONAL - DOC A vector containing the stdev values of the noise of the drift factor per second (only if dynamic==true) i.e. the sqrt of the diagonal elements of the covariance matrix [m/sqrt(s)]. - TYPE Vector3d
+  O:
+    dynamic: false  # DOC If the orientation is dynamic, i.e. it changes along time. - TYPE bool
+    value: [0.0, 0.0, 0.0, 0.0]  # DOC A vector containing the quaternion values (x, y, z, w) - TYPE Vector4d
+    prior:
+      mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+      factor_std: [0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [rad]. - TYPE Vector3d
+    drift_std: [0.0, 0.0, 0.0]  # OPTIONAL - DOC A vector containing the stdev values of the noise of the drift factor per second (only if dynamic==true), i.e. the sqrt of the diagonal elements of the covariance matrix [rad/sqrt(s)]. - TYPE Vector3d
\ No newline at end of file
diff --git a/yaml_templates/sensor/StateSensorO2d.yaml b/yaml_templates/sensor/StateSensorO2d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..fb3c52cffc60f483f3f3622fee5e42ba7565202b
--- /dev/null
+++ b/yaml_templates/sensor/StateSensorO2d.yaml
@@ -0,0 +1,6 @@
+dynamic: false  # DOC If the orientation is dynamic, i.e. it changes along time. - TYPE bool
+value: [0.0]  # DOC A vector containing the orientation, yaw [rad]. - TYPE Vector1d
+prior:
+  mode: "fix"  # DOC It can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [rad]. - TYPE Vector1d
+drift_std: [0.0]  # OPTIONAL - DOC A vector containing the stdev values of the noise of the drift factor per second (only if dynamic==true) [rad/sqrt(s)]. - TYPE Vector1d
\ No newline at end of file
diff --git a/yaml_templates/sensor/StateSensorO3d.yaml b/yaml_templates/sensor/StateSensorO3d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..2f721f3226318b86c1072d30f595c8fbbf33ede8
--- /dev/null
+++ b/yaml_templates/sensor/StateSensorO3d.yaml
@@ -0,0 +1,6 @@
+dynamic: false  # DOC If the orientation is dynamic, i.e. it changes along time. - TYPE bool
+value: [0.0, 0.0, 0.0, 0.0]  # DOC A vector containing the quaternion values (x, y, z, w) - TYPE Vector4d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [rad]. - TYPE Vector3d
+drift_std: [0.0, 0.0, 0.0]  # OPTIONAL - DOC A vector containing the stdev values of the noise of the drift factor per second (only if dynamic==true), i.e. the sqrt of the diagonal elements of the covariance matrix [rad/sqrt(s)]. - TYPE Vector3d
\ No newline at end of file
diff --git a/yaml_templates/sensor/StateSensorP2d.yaml b/yaml_templates/sensor/StateSensorP2d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..86be3ccc0d2646a47f5ad9257d55c33b0d68ca45
--- /dev/null
+++ b/yaml_templates/sensor/StateSensorP2d.yaml
@@ -0,0 +1,6 @@
+dynamic: false  # DOC If the position is dynamic, i.e. it changes along time. - TYPE bool
+value: [0.0, 0.0]  # DOC A vector containing the position (x, y) [m]. - TYPE Vector2d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector2d
+drift_std: [0.0, 0.0]  # OPTIONAL - DOC A vector containing the stdev values of the noise of the drift factor per second (only if dynamic==true) i.e. the sqrt of the diagonal elements of the covariance matrix [m/sqrt(s)]. - TYPE Vector2d
\ No newline at end of file
diff --git a/yaml_templates/sensor/StateSensorP3d.yaml b/yaml_templates/sensor/StateSensorP3d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..a2e9c0cb4ebc7b070685db0e1779fd709d4cdd45
--- /dev/null
+++ b/yaml_templates/sensor/StateSensorP3d.yaml
@@ -0,0 +1,6 @@
+dynamic: false  # DOC If the position is dynamic, i.e. it changes along time. - TYPE bool
+value: [0.0, 0.0, 0.0]  # DOC A vector containing the position (x, y, z) [m]. - TYPE Vector3d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector3d
+drift_std: [0.0, 0.0, 0.0]  # OPTIONAL - DOC A vector containing the stdev values of the noise of the drift factor per second (only if dynamic==true) i.e. the sqrt of the diagonal elements of the covariance matrix [m/sqrt(s)]. - TYPE Vector3d
\ No newline at end of file
diff --git a/yaml_templates/solver/SolverCeres.yaml b/yaml_templates/solver/SolverCeres.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..765c8ac1a4acf944e0f32d519455888f3566e5e1
--- /dev/null
+++ b/yaml_templates/solver/SolverCeres.yaml
@@ -0,0 +1,14 @@
+period: 0.0  # DOC Period of the solver thread. - TYPE double
+verbose: 0  # DOC Verbosity of the solver. 0: Nothing, 1: Brief report, 2: Full report. - TYPE int - OPTIONS [0, 1, 2]
+compute_cov: false  # DOC If the solver has to compute any covariance matrix block. - TYPE bool
+cov_enum: 0  # MANDATORY if $compute_cov - DOC Which covariance matrix blocks have to be computed. 0: All blocks and all cross-covariances. 1: All marginals. 2: Marginals of landmarks and current robot pose plus cross covariances of current robot and all landmarks. 3: Last frame P and V. 4: Last frame P, O, V and T. 5: Last frame P and T. - TYPE int - OPTIONS [0, 1, 2, 3, 4, 5]
+cov_period: 0.0  # MANDATORY if $compute_cov - DOC Period of the covariance computation. - TYPE double
+minimizer: "LEVENBERG_MARQUARDT"  # DOC Type of minimizer. - TYPE string - OPTIONS [LEVENBERG_MARQUARDT, levenberg_marquardt, DOGLEG, dogleg, LBFGS, lbfgs, BFGS, bfgs]
+interrupt_on_problem_change: false  # DOC If the solver has to interrupted each time the problem changes to rebuild the problem. - TYPE bool
+min_num_iterations: 0  # MANDATORY if $interrupt_on_problem_change - DOC Amount of solver iterations during which the solver cannot be interrupted (used in interrupt_on_problem_change == true). - TYPE unsigned int
+max_num_iterations: 0  # DOC Maximum amount of solver iterations. If the solver didn"t converge after this amount of iterations, it stops anyway. - TYPE unsigned int
+function_tolerance: 0.0  # DOC Function tolerance. Convergence criterion. Typical value: 1e-8 - TYPE double
+gradient_tolerance: 0.0  # DOC Gradient tolerance. Convergence criterion. Typical value: 1e-8 - TYPE double
+n_threads: 1  # DOC Amount of threads used by ceres. - TYPE unsigned int - OPTIONS [1, 2, 3, 4]
+use_nonmonotonic_steps: false  # OPTIONAL - DOC If the solver is allowed to update the solution with non-monotonic steps. Only used in LEVENBERG_MARQUARDT and DOGLEG minimizers. - TYPE bool
+max_consecutive_nonmonotonic_steps: 2  # OPTIONAL - DOC Amount of consecutive non-monotonic steps allowed. Only used in LEVENBERG_MARQUARDT and DOGLEG minimizers. - TYPE unsigned int
\ No newline at end of file
diff --git a/yaml_templates/solver/SolverManager.yaml b/yaml_templates/solver/SolverManager.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..15968cb34ff891261c37b0c849f3e4fda7d56c68
--- /dev/null
+++ b/yaml_templates/solver/SolverManager.yaml
@@ -0,0 +1,5 @@
+period: 0.0  # DOC Period of the solver thread. - TYPE double
+verbose: 0  # DOC Verbosity of the solver. 0: Nothing, 1: Brief report, 2: Full report. - TYPE int - OPTIONS [0, 1, 2]
+compute_cov: false  # DOC If the solver has to compute any covariance matrix block. - TYPE bool
+cov_enum: 0  # MANDATORY if $compute_cov - DOC Which covariance matrix blocks have to be computed. 0: All blocks and all cross-covariances. 1: All marginals. 2: Marginals of landmarks and current robot pose plus cross covariances of current robot and all landmarks. 3: Last frame P and V. 4: Last frame P, O, V and T. 5: Last frame P and T. - TYPE int - OPTIONS [0, 1, 2, 3, 4, 5]
+cov_period: 0.0  # MANDATORY if $compute_cov - DOC Period of the covariance computation. - TYPE double
\ No newline at end of file
diff --git a/yaml_templates/state/StateO2d.yaml b/yaml_templates/state/StateO2d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..57f6c739d307fe87d73b6959c79b64c93aea4beb
--- /dev/null
+++ b/yaml_templates/state/StateO2d.yaml
@@ -0,0 +1,4 @@
+value: [0.0]  # DOC A vector containing the orientation, yaw [rad]. - TYPE Vector1d
+prior:
+  mode: "fix"  # DOC It can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [rad]. - TYPE Vector1d
\ No newline at end of file
diff --git a/yaml_templates/state/StateO3d.yaml b/yaml_templates/state/StateO3d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..7d2d34cb4dc1921600837f0a20d7aeb1208395b1
--- /dev/null
+++ b/yaml_templates/state/StateO3d.yaml
@@ -0,0 +1,4 @@
+value: [0.0, 0.0, 0.0, 0.0]  # DOC A vector containing the quaternion values (x, y, z, w) - TYPE Vector4d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [rad]. - TYPE Vector3d
\ No newline at end of file
diff --git a/yaml_templates/state/StateP2d.yaml b/yaml_templates/state/StateP2d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..9dad0aa18f48cfc73b18c38c33365613f85f7a3e
--- /dev/null
+++ b/yaml_templates/state/StateP2d.yaml
@@ -0,0 +1,4 @@
+value: [0.0, 0.0]  # DOC A vector containing the position (x, y) [m]. - TYPE Vector2d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector2d
\ No newline at end of file
diff --git a/yaml_templates/state/StateP3d.yaml b/yaml_templates/state/StateP3d.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..0b4566aa2e1dd20190665968d62e555ecbbe74b8
--- /dev/null
+++ b/yaml_templates/state/StateP3d.yaml
@@ -0,0 +1,4 @@
+value: [0.0, 0.0, 0.0]  # DOC A vector containing the position (x, y, z) [m]. - TYPE Vector3d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix [m]. - TYPE Vector3d
\ No newline at end of file
diff --git a/yaml_templates/state/StateParams1.yaml b/yaml_templates/state/StateParams1.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..af418f56d1d3a46701d863763c8b0345293cadaf
--- /dev/null
+++ b/yaml_templates/state/StateParams1.yaml
@@ -0,0 +1,4 @@
+value: [0.0]  # DOC A vector containing the state value. - TYPE Vector1d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix. - TYPE Vector1d
\ No newline at end of file
diff --git a/yaml_templates/state/StateParams10.yaml b/yaml_templates/state/StateParams10.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..8b6900e393c10634891a9e49fe01945960829fb7
--- /dev/null
+++ b/yaml_templates/state/StateParams10.yaml
@@ -0,0 +1,4 @@
+value: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]  # DOC A vector containing the state values. - TYPE Vector10d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix. - TYPE Vector10d
\ No newline at end of file
diff --git a/yaml_templates/state/StateParams2.yaml b/yaml_templates/state/StateParams2.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..92a906ab78f30edbb648ad2d4dfc72dee4c46ce6
--- /dev/null
+++ b/yaml_templates/state/StateParams2.yaml
@@ -0,0 +1,4 @@
+value: [0.0, 0.0]  # DOC A vector containing the state values. - TYPE Vector2d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix. - TYPE Vector2d
\ No newline at end of file
diff --git a/yaml_templates/state/StateParams3.yaml b/yaml_templates/state/StateParams3.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..230086b4351d9a02b98899c0047e45ac04175865
--- /dev/null
+++ b/yaml_templates/state/StateParams3.yaml
@@ -0,0 +1,4 @@
+value: [0.0, 0.0, 0.0]  # DOC A vector containing the state values. - TYPE Vector3d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix. - TYPE Vector3d
\ No newline at end of file
diff --git a/yaml_templates/state/StateParams4.yaml b/yaml_templates/state/StateParams4.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..2473eda2789e32828574990a99719f6c9f453317
--- /dev/null
+++ b/yaml_templates/state/StateParams4.yaml
@@ -0,0 +1,4 @@
+value: [0.0, 0.0, 0.0, 0.0]  # DOC A vector containing the state values. - TYPE Vector4d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix. - TYPE Vector4d
\ No newline at end of file
diff --git a/yaml_templates/state/StateParams5.yaml b/yaml_templates/state/StateParams5.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..ece391fc74b1d20d7d1479e769823dd52803a398
--- /dev/null
+++ b/yaml_templates/state/StateParams5.yaml
@@ -0,0 +1,4 @@
+value: [0.0, 0.0, 0.0, 0.0, 0.0]  # DOC A vector containing the state values. - TYPE Vector5d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0, 0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix. - TYPE Vector5d
\ No newline at end of file
diff --git a/yaml_templates/state/StateParams6.yaml b/yaml_templates/state/StateParams6.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..ffaebabd16dd2f71523138f2d175db91ba62f3f6
--- /dev/null
+++ b/yaml_templates/state/StateParams6.yaml
@@ -0,0 +1,4 @@
+value: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0]  # DOC A vector containing the state values. - TYPE Vector6d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix. - TYPE Vector6d
\ No newline at end of file
diff --git a/yaml_templates/state/StateParams7.yaml b/yaml_templates/state/StateParams7.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..9ee2323fdfe3c2612f30daf706b8d563524236b6
--- /dev/null
+++ b/yaml_templates/state/StateParams7.yaml
@@ -0,0 +1,4 @@
+value: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]  # DOC A vector containing the state values. - TYPE Vector7d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix. - TYPE Vector7d
\ No newline at end of file
diff --git a/yaml_templates/state/StateParams8.yaml b/yaml_templates/state/StateParams8.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..92017c2ab7f04eddb17ec3035accfd0831d18e1a
--- /dev/null
+++ b/yaml_templates/state/StateParams8.yaml
@@ -0,0 +1,4 @@
+value: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]  # DOC A vector containing the state values. - TYPE Vector8d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix. - TYPE Vector8d
\ No newline at end of file
diff --git a/yaml_templates/state/StateParams9.yaml b/yaml_templates/state/StateParams9.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..8655bcc2d296b4b95792a0b58af35344a14a76f0
--- /dev/null
+++ b/yaml_templates/state/StateParams9.yaml
@@ -0,0 +1,4 @@
+value: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]  # DOC A vector containing the state values. - TYPE Vector9d
+prior:
+  mode: "fix"  # DOC Can be "factor" to add an absolute factor (with covariance defined in "factor_std"), "fix" to set the values constant or "initial_guess" to just set the values. - TYPE string - OPTIONS [fix, factor, initial_guess]
+  factor_std: [0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0]  # MANDATORY if $mode == "factor" - DOC A vector containing the stdev values of the noise of the factor, i.e. the sqrt of the diagonal elements of the covariance matrix. - TYPE Vector9d
\ No newline at end of file
diff --git a/yaml_templates/tree_manager/TreeManagerBase.yaml b/yaml_templates/tree_manager/TreeManagerBase.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..2aca9fcb4712036db19382bf2a91f66d6266545c
--- /dev/null
+++ b/yaml_templates/tree_manager/TreeManagerBase.yaml
@@ -0,0 +1 @@
+type: "whatever"  # DOC Type of the TreeManager. To keep all frames, use \none\. - TYPE string
\ No newline at end of file
diff --git a/yaml_templates/tree_manager/TreeManagerSlidingWindow.yaml b/yaml_templates/tree_manager/TreeManagerSlidingWindow.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..956dc1d54073a90446b6087b979fef775fde7617
--- /dev/null
+++ b/yaml_templates/tree_manager/TreeManagerSlidingWindow.yaml
@@ -0,0 +1,4 @@
+type: "whatever"  # DOC Type of the TreeManager. To keep all frames, use \none\. - TYPE string
+n_frames: 0  # DOC Total number of frames of the sliding window. - TYPE unsigned int
+n_fix_first_frames: 0  # DOC Amount of frames fixed at the begining of the sliding window. - TYPE unsigned int
+viral_remove_parent_without_children: false  # DOC If the other wolf nodes (landmarks) have to be removed when removing frames. Otherwise, they will remain alive but unconstrained. - TYPE bool
\ No newline at end of file
diff --git a/yaml_templates/tree_manager/TreeManagerSlidingWindowDualRate.yaml b/yaml_templates/tree_manager/TreeManagerSlidingWindowDualRate.yaml
new file mode 100644
index 0000000000000000000000000000000000000000..96b3355c55a041e5c8378fe15796010368e13823
--- /dev/null
+++ b/yaml_templates/tree_manager/TreeManagerSlidingWindowDualRate.yaml
@@ -0,0 +1,6 @@
+type: "whatever"  # DOC Type of the TreeManager. To keep all frames, use \none\. - TYPE string
+n_frames: 0  # DOC Total number of frames of the sliding window. - TYPE unsigned int
+n_fix_first_frames: 0  # DOC Amount of frames fixed at the begining of the sliding window. - TYPE unsigned int
+viral_remove_parent_without_children: false  # DOC If the other wolf nodes (landmarks) have to be removed when removing frames. Otherwise, they will remain alive but unconstrained. - TYPE bool
+n_frames_recent: 0  # DOC Amount of frames kept in the recent part of the sliding window. - TYPE unsigned int
+rate_old_frames: 0  # DOC Rate of keyframes that are kept from the recent part to the sparse part of the sliding window. One of each "rate_old_frames" will be kept. - TYPE unsigned int
\ No newline at end of file