From 5c39dd7ca5c241f9329071ac5a2e5fde3d3b8e79 Mon Sep 17 00:00:00 2001
From: Mark Jones <jones@jlab.org>
Date: Wed, 13 Nov 2013 10:52:40 -0500
Subject: [PATCH] Modified THcAerogel::ReadDatabase 1) Need to add fNelem to
 DBRequest to read parameter arrays. 2) Added optional variable and set to
 true. Flag in the DBRequest to tell code that parameter is optional and does
 not have to be found. 3) Move setting of fNelem to before DBRequest for
 aero_num_pairs  so that it can be overwritten by parameter file.

---
 src/THcAerogel.cxx | 17 +++++++++--------
 1 file changed, 9 insertions(+), 8 deletions(-)

diff --git a/src/THcAerogel.cxx b/src/THcAerogel.cxx
index 1cb9ca2..4111a08 100644
--- a/src/THcAerogel.cxx
+++ b/src/THcAerogel.cxx
@@ -112,11 +112,12 @@ Int_t THcAerogel::ReadDatabase( const TDatime& date )
   prefix[0]=tolower(GetApparatus()->GetName()[0]);
   prefix[1]='\0';
 
+  fNelem = 8;			// Default if not defined
+  Bool_t optional=true ;
   DBRequest listextra[]={
-    {"aero_num_pairs", &fNelem, kInt},
+    {"aero_num_pairs", &fNelem, kInt,0,optional},
     {0}
   };
-  fNelem = 8;			// Default if not defined
   gHcParms->LoadParmValues((DBRequest*)&listextra,prefix);
 
   fA_Pos = new Float_t[fNelem];
@@ -134,12 +135,12 @@ Int_t THcAerogel::ReadDatabase( const TDatime& date )
   fNegPedMean = new Double_t[fNelem];
 
   DBRequest list[]={
-    {"aero_pos_gain", fPosGain, kDouble},
-    {"aero_neg_gain", fPosGain, kDouble},
-    {"aero_pos_ped_limit", fPosPedLimit, kInt},
-    {"aero_neg_ped_limit", fNegPedLimit, kInt},
-    //    {"aero_pos_ped_mean", fPosPedMean, kDouble},
-    //    {"aero_neg_ped_mean", fNegPedMean, kDouble},
+    {"aero_pos_gain", fPosGain, kDouble, fNelem},
+    {"aero_neg_gain", fNegGain, kDouble, fNelem},
+    {"aero_pos_ped_limit", fPosPedLimit, kInt, fNelem},
+    {"aero_neg_ped_limit", fNegPedLimit, kInt, fNelem},
+    {"aero_pos_ped_mean", fPosPedMean, kDouble, fNelem,optional},
+    {"aero_neg_ped_mean", fNegPedMean, kDouble, fNelem,optional},
     {0}
   };
   gHcParms->LoadParmValues((DBRequest*)&list,prefix);
-- 
GitLab