@@ -120,6 +120,9 @@ public class LeicaHandler extends BaseHandler {
120
120
private MetadataLevel level ;
121
121
private int laserCount = 0 ;
122
122
123
+ private Map <String , Time > exposureTimes = new HashMap <String , Time >();
124
+ private Map <String , Time > deltaT = new HashMap <String , Time >();
125
+
123
126
// -- Constructor --
124
127
125
128
public LeicaHandler (MetadataStore store , MetadataLevel level ) {
@@ -144,6 +147,10 @@ public LeicaHandler(MetadataStore store, MetadataLevel level) {
144
147
145
148
public Vector <String > getLutNames () { return lutNames ; }
146
149
150
+ public Map <String , Time > getExposureTimes () { return exposureTimes ; }
151
+
152
+ public Map <String , Time > getDeltaT () { return deltaT ; }
153
+
147
154
// -- DefaultHandler API methods --
148
155
149
156
@ Override
@@ -549,7 +556,7 @@ else if (id.indexOf("WFC") == 1) {
549
556
try {
550
557
Double exposureTime = DataTools .parseDouble (value );
551
558
if (exposureTime != null ) {
552
- store . setPlaneExposureTime ( new Time (exposureTime , UNITS .SECOND ), numDatasets , c );
559
+ exposureTimes . put ( numDatasets + "-" + c , new Time (exposureTime , UNITS .SECOND ));
553
560
}
554
561
}
555
562
catch (IndexOutOfBoundsException e ) { }
@@ -878,14 +885,14 @@ else if (qName.equals("TimeStamp") && numDatasets >= 0) {
878
885
store .setImageAcquisitionDate (new Timestamp (date ), numDatasets );
879
886
}
880
887
firstStamp = ms ;
881
- store . setPlaneDeltaT ( new Time (0.0 , UNITS .SECOND ), numDatasets , count );
888
+ deltaT . put ( numDatasets + "-" + count , new Time (0.0 , UNITS .SECOND ));
882
889
}
883
890
else if (level != MetadataLevel .MINIMUM ) {
884
891
CoreMetadata coreMeta = core .get (numDatasets );
885
892
int nImages = coreMeta .sizeZ * coreMeta .sizeT * coreMeta .sizeC ;
886
893
if (count < nImages ) {
887
894
ms -= firstStamp ;
888
- store . setPlaneDeltaT ( new Time (ms / 1000.0 , UNITS .SECOND ), numDatasets , count );
895
+ deltaT . put ( numDatasets + "-" + count , new Time (ms / 1000.0 , UNITS .SECOND ));
889
896
}
890
897
}
891
898
@@ -897,7 +904,8 @@ else if (qName.equals("RelTimeStamp") && level != MetadataLevel.MINIMUM) {
897
904
if (count < nImages ) {
898
905
Double time = DataTools .parseDouble (attributes .getValue ("Time" ));
899
906
if (time != null ) {
900
- store .setPlaneDeltaT (new Time (time , UNITS .SECOND ), numDatasets , count ++);
907
+ deltaT .put (numDatasets + "-" + count , new Time (time , UNITS .SECOND ));
908
+ count ++;
901
909
}
902
910
}
903
911
}
0 commit comments