24 namespace eventsetup {
87 bool haveAValidDependentRecord =
false;
88 bool allRecordsValid =
true;
94 haveAValidDependentRecord =
true;
98 bool intervalsWereComparible =
true;
100 itProvider != itProviderEnd;
102 if((*itProvider)->setValidityIntervalFor(iTime)) {
103 haveAValidDependentRecord=
true;
107 intervalsWereComparible=
false;
110 if(newInterval.
first() < providerInterval.
first()) {
113 if(newInterval.
last() > providerInterval.
last()) {
117 allRecordsValid =
false;
120 if(intervalsWereComparible) {
121 if(!haveAValidDependentRecord) {
125 if(!allRecordsValid) {
131 oInterval = newInterval;
149 bool hadChangedIOV =
false;
153 std::vector<ValidityInterval>::iterator itIOVs =
previousIOVs_.begin();
155 itProvider != itProviderEnd;
156 ++itProvider, ++itIOVs) {
157 if((*itProvider)->setValidityIntervalFor(iTime)) {
159 if(*itIOVs != providerInterval) {
160 hadChangedIOV =
true;
167 if(closestTimeStamp < providerInterval.
first().
time()) {
168 closestTimeStamp = providerInterval.
first().
time();
171 *itIOVs = providerInterval;
176 if(closestID.
run() !=0) {
177 if(closestTimeStamp.
value() == 0) {
183 const unsigned long long kLumiTimeLength = 23;
void setFirst(const IOVSyncValue &iTime)
std::vector< ValidityInterval > previousIOVs_
const EventID & eventID() const
static const IOVSyncValue & endOfTime()
std::pair< Time_t, Time_t > ValidityInterval
LuminosityBlockNumber_t luminosityBlock() const
const IOVSyncValue & last() const
static const IOVSyncValue & beginOfTime()
boost::shared_ptr< EventSetupRecordIntervalFinder > alternate_
unsigned int unixTime() const
Time in seconds since January 1, 1970.
void setLast(const IOVSyncValue &iTime)
virtual ~DependentRecordIntervalFinder()
void addProviderWeAreDependentOn(boost::shared_ptr< EventSetupRecordProvider >)
TimeValue_t value() const
virtual void setIntervalFor(const EventSetupRecordKey &, const IOVSyncValue &, ValidityInterval &)
void setAlternateFinder(boost::shared_ptr< EventSetupRecordIntervalFinder >)
std::vector< std::vector< double > > tmp
static const ValidityInterval & invalidInterval()
DependentRecordIntervalFinder(const EventSetupRecordKey &)
const Timestamp & time() const
const IOVSyncValue & first() const
bool comparable(const IOVSyncValue &iOther) const
void findingRecordWithKey(const eventsetup::EventSetupRecordKey &)
static const IOVSyncValue & invalidIOVSyncValue()