From a5cdee350aa8a426841021bda4d57e788db314c4 Mon Sep 17 00:00:00 2001
From: lintao <lintao51@gmail.com>
Date: Wed, 15 Jun 2022 21:17:14 +0800
Subject: [PATCH] update the code to use
 decltype(edm4hep::TrackState::covMatrix).

---
 Reconstruction/SiliconTracking/src/SiliconTrackingAlg.cpp      | 2 +-
 Reconstruction/SiliconTracking/src/TrackSubsetAlg.cpp          | 2 +-
 Service/TrackSystemSvc/include/TrackSystemSvc/MarlinTrkUtils.h | 2 +-
 Service/TrackSystemSvc/src/MarlinTrkUtils.cc                   | 2 +-
 4 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/Reconstruction/SiliconTracking/src/SiliconTrackingAlg.cpp b/Reconstruction/SiliconTracking/src/SiliconTrackingAlg.cpp
index 25589fad..7fbb98e9 100644
--- a/Reconstruction/SiliconTracking/src/SiliconTrackingAlg.cpp
+++ b/Reconstruction/SiliconTracking/src/SiliconTrackingAlg.cpp
@@ -2698,7 +2698,7 @@ void SiliconTrackingAlg::FinalRefit(edm4hep::TrackCollection* trk_col) {
       // setup initial dummy covariance matrix
       //std::vector<float> covMatrix;
       //covMatrix.resize(15);
-      std::array<float,15> covMatrix;
+      decltype(edm4hep::TrackState::covMatrix) covMatrix;
 
       for (unsigned icov = 0; icov<covMatrix.size(); ++icov) {
         covMatrix[icov] = 0;
diff --git a/Reconstruction/SiliconTracking/src/TrackSubsetAlg.cpp b/Reconstruction/SiliconTracking/src/TrackSubsetAlg.cpp
index d918cf38..79268509 100644
--- a/Reconstruction/SiliconTracking/src/TrackSubsetAlg.cpp
+++ b/Reconstruction/SiliconTracking/src/TrackSubsetAlg.cpp
@@ -214,7 +214,7 @@ StatusCode TrackSubsetAlg::execute(){
       trackerHits.push_back(Navigation::Instance()->GetTrackerHit(trackerHitsObj[i].getObjectID()));
     } 
     // setup initial dummy covariance matrix
-    std::array<float,15> covMatrix;
+    decltype(edm4hep::TrackState::covMatrix) covMatrix;
     for (unsigned icov = 0; icov<covMatrix.size(); ++icov) {
       covMatrix[icov] = 0;
     }
diff --git a/Service/TrackSystemSvc/include/TrackSystemSvc/MarlinTrkUtils.h b/Service/TrackSystemSvc/include/TrackSystemSvc/MarlinTrkUtils.h
index 68498fe0..70303ae3 100644
--- a/Service/TrackSystemSvc/include/TrackSystemSvc/MarlinTrkUtils.h
+++ b/Service/TrackSystemSvc/include/TrackSystemSvc/MarlinTrkUtils.h
@@ -55,7 +55,7 @@ namespace MarlinTrk{
       std::vector<edm4hep::TrackerHit>& hit_list,
       edm4hep::MutableTrack* track,
       bool fit_backwards,
-      const std::array<float,15>& initial_cov_for_prefit,
+      const decltype(edm4hep::TrackState::covMatrix)& initial_cov_for_prefit,
       float bfield_z,
       double maxChi2Increment=DBL_MAX);
   
diff --git a/Service/TrackSystemSvc/src/MarlinTrkUtils.cc b/Service/TrackSystemSvc/src/MarlinTrkUtils.cc
index 3c2dead2..ffa0f7f9 100644
--- a/Service/TrackSystemSvc/src/MarlinTrkUtils.cc
+++ b/Service/TrackSystemSvc/src/MarlinTrkUtils.cc
@@ -94,7 +94,7 @@ namespace MarlinTrk {
   
   int createTrackStateAtCaloFace( IMarlinTrack* marlinTrk, edm4hep::TrackState* track, edm4hep::TrackerHit trkhit, bool tanL_is_positive );
   
-  int createFinalisedLCIOTrack( IMarlinTrack* marlinTrk, std::vector<edm4hep::TrackerHit>& hit_list, edm4hep::MutableTrack* track, bool fit_backwards, const std::array<float,15>& initial_cov_for_prefit, float bfield_z, double maxChi2Increment){
+    int createFinalisedLCIOTrack( IMarlinTrack* marlinTrk, std::vector<edm4hep::TrackerHit>& hit_list, edm4hep::MutableTrack* track, bool fit_backwards, const decltype(edm4hep::TrackState::covMatrix)& initial_cov_for_prefit, float bfield_z, double maxChi2Increment){
     
     ///////////////////////////////////////////////////////
     // check inputs 
-- 
GitLab