00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #include "BaBar/BaBar.hh"
00022
00023
00024
00025
00026 #include "BdbTime/BdbMinimumInterval.hh"
00027
00028
00029
00030
00031 #include "BdbTime/BdbIntervalBase.hh"
00032 #include "BdbTime/BdbTime.hh"
00033
00034 namespace BdbMinimumInterval {
00035
00036 BdbIntervalBase findInterval(const vector<BdbIntervalBase>& intervals)
00037 {
00038 BdbIntervalBase result;
00039
00040 BdbTime begin(BdbTime::minusInfinity);
00041 BdbTime end(BdbTime::plusInfinity);
00042
00043 vector<BdbIntervalBase>::const_iterator iter = intervals.begin();
00044
00045 while (iter != intervals.end()) {
00046 if (iter->beginTime() > begin) begin = iter->beginTime();
00047 if (iter->endTime() < end) end = iter->endTime();
00048 iter++;
00049 }
00050
00051 result.setBeginTime(begin);
00052 result.setEndTime(end);
00053
00054 return result;
00055 }
00056 }