From b8829a8fdd1d03139292712f5a3ccc19be76c0fc Mon Sep 17 00:00:00 2001
From: Dominik Loidolt <dominik.loidolt@univie.ac.at>
Date: Wed, 28 Feb 2024 10:06:08 +0100
Subject: [PATCH] Change subservice for SST_FCx_S_BACKGROUND_VALUES form 3 to
 25 TBC!

---
 lib/common/cmp_data_types.c | 7 ++-----
 lib/common/cmp_data_types.h | 2 +-
 lib/icu_compress/cmp_icu.c  | 5 +++++
 3 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/lib/common/cmp_data_types.c b/lib/common/cmp_data_types.c
index 7c95c9a..2cff95b 100644
--- a/lib/common/cmp_data_types.c
+++ b/lib/common/cmp_data_types.c
@@ -405,11 +405,8 @@ enum cmp_data_type convert_subservice_to_cmp_data_type(uint8_t subservice)
 		return DATA_TYPE_F_CAM_IMAGETTE;
 	case SST_FCx_S_SCIENCE_OFFSET_VALUES:
 		return DATA_TYPE_F_CAM_OFFSET;
-	/* TODO: SST_FCx_S_BACKGROUND_VALUES and SST_NCxx_S_SCIENCE_IMAGETTE has
-	 * the same subservice number*/
-	/* case SST_FCx_S_BACKGROUND_VALUES: */
-	/* 	return DATA_TYPE_F_CAM_BACKGROUND; */
-	/* 	break; */
+	case SST_FCx_S_BACKGROUND_VALUES:
+		return DATA_TYPE_F_CAM_BACKGROUND;
 	default:
 		return DATA_TYPE_UNKNOWN;
 	};
diff --git a/lib/common/cmp_data_types.h b/lib/common/cmp_data_types.h
index f712a82..267baf1 100644
--- a/lib/common/cmp_data_types.h
+++ b/lib/common/cmp_data_types.h
@@ -63,7 +63,7 @@
 /* subservice types for service 228 */
 #define SST_FCx_S_SCIENCE_IMAGETTE	1 /* Imagettes from F-camera. */
 #define SST_FCx_S_SCIENCE_OFFSET_VALUES	2 /* Offset values Mean of the pixels of offset windows */
-#define SST_FCx_S_BACKGROUND_VALUES	3 /* Background values. Mean of the pixels of background windows */
+#define SST_FCx_S_BACKGROUND_VALUES	25 /* TBC: Background values. Mean of the pixels of background windows */
 
 /* size of a collection (multi entry) header */
 #define COLLECTION_HDR_SIZE 12
diff --git a/lib/icu_compress/cmp_icu.c b/lib/icu_compress/cmp_icu.c
index 1ec466d..ba3f8f4 100644
--- a/lib/icu_compress/cmp_icu.c
+++ b/lib/icu_compress/cmp_icu.c
@@ -2479,6 +2479,11 @@ static enum chunk_type get_chunk_type(uint16_t subservice)
 	case SST_NCxx_S_SCIENCE_L_FX_EFX_NCOB_ECOB:
 		chunk_type = CHUNK_TYPE_LONG_CADENCE;
 		break;
+	case SST_FCx_S_SCIENCE_IMAGETTE:
+	case SST_FCx_S_SCIENCE_OFFSET_VALUES:
+	case SST_FCx_S_BACKGROUND_VALUES:
+		chunk_type = CHUNK_TYPE_F_CHAIN;
+		break;
 	case SST_NCxx_S_SCIENCE_F_FX:
 	case SST_NCxx_S_SCIENCE_F_FX_EFX:
 	case SST_NCxx_S_SCIENCE_F_FX_NCOB:
-- 
GitLab