From 3d5b449e50152dc4cb5adb13a9c6d223853d9fb0 Mon Sep 17 00:00:00 2001
From: ahmedk <karim.ahmed@xfel.eu>
Date: Wed, 4 Jan 2023 15:34:16 +0100
Subject: [PATCH] fix ndarray and fix format_time time format to calcat
 expected isoformat

---
 src/cal_tools/calcat_interface.py | 13 ++++++++-----
 1 file changed, 8 insertions(+), 5 deletions(-)

diff --git a/src/cal_tools/calcat_interface.py b/src/cal_tools/calcat_interface.py
index 9049fae00..0eba531d1 100644
--- a/src/cal_tools/calcat_interface.py
+++ b/src/cal_tools/calcat_interface.py
@@ -106,7 +106,7 @@ class CalCatApi(metaclass=ClientWrapper):
         """Parse different ways to specify time to CalCat."""
 
         if isinstance(dt, datetime):
-            return dt.astimezone(timezone.utc).strftime("%Y%m%dT%H%M%S%Z")
+            return dt.astimezone(timezone.utc).isoformat()
         elif isinstance(dt, date):
             return cls.format_time(datetime.combine(dt, time()))
 
@@ -528,8 +528,6 @@ class CalibrationData:
             self.detector["id"], self.pdu_snapshot_at, self.module_naming
         )
 
-
-
     @property
     def condition(self):
         return self._build_condition(self.parameters)
@@ -589,7 +587,7 @@ class CalibrationData:
         self,
         module,
         calibration,
-        metadata,
+        metadata=None,
     ):
         """Load CCV data as ndarray.
 
@@ -602,6 +600,8 @@ class CalibrationData:
         Returns:
             (ndarray): CCV data
         """
+        import numpy as np
+
         if self.caldb_root is None:
             raise RuntimeError("calibration database store unavailable")
 
@@ -611,7 +611,10 @@ class CalibrationData:
         if metadata is None:
             metadata = self.metadata([calibration])
 
-        return self._load_ccv_data(metadata, module, calibration)
+        row = metadata[module][calibration]
+
+        with h5py.File(self.caldb_root / row['path'], 'r') as f:
+            return np.asarray(f[row['dataset'] + '/data'])
 
     def _allocate_constant_arrays(self, metadata, const_load_mp, const_data):
 
-- 
GitLab