#include <IOVSequence.h>
a time order sequence of interval-of-validity The time associated to each interval is the end-validity (till time) the end of each interval is the begin of the next it is a UpdateStamp by mixin (I'll regret..)
Definition at line 22 of file IOVSequence.h.
Definition at line 27 of file IOVSequence.h.
typedef ora::PVector<Item> cond::IOVSequence::Container |
Definition at line 25 of file IOVSequence.h.
Definition at line 24 of file IOVSequence.h.
Definition at line 26 of file IOVSequence.h.
cond::IOVSequence::IOVSequence | ( | ) |
Definition at line 10 of file IOVSequence.cc.
: m_notOrdered(false), m_sorted(0) {}
cond::IOVSequence::IOVSequence | ( | cond::TimeType | ttype | ) | [explicit] |
Definition at line 12 of file IOVSequence.cc.
: m_timetype(ttype), m_lastTill(timeTypeSpecs[ttype].endValue), m_notOrdered(false), m_metadata(" "), m_sorted(0) {}
cond::IOVSequence::IOVSequence | ( | int | type, |
cond::Time_t | till, | ||
std::string const & | imetadata | ||
) |
Definition at line 18 of file IOVSequence.cc.
: m_timetype(type), m_lastTill(till),m_notOrdered(false), m_metadata(imetadata), m_sorted(0) {}
cond::IOVSequence::~IOVSequence | ( | ) |
cond::IOVSequence::IOVSequence | ( | IOVSequence const & | rh | ) |
Definition at line 27 of file IOVSequence.cc.
: UpdateStamp(rh), m_iovs(rh.m_iovs), m_timetype(rh.m_timetype), m_lastTill(rh.m_lastTill), m_notOrdered(rh.m_notOrdered), m_metadata(rh.m_metadata), m_sorted(0) {}
size_t cond::IOVSequence::add | ( | cond::Time_t | time, |
std::string const & | wrapperToken | ||
) |
Definition at line 72 of file IOVSequence.cc.
References prof2calltree::back, disorder(), relativeConstraints::empty, m_notOrdered, piovs(), ora::PVector< Tp >::push_back(), and ora::PVector< Tp >::size().
Referenced by cond::backportIOV(), and cond::migrateIOV().
void cond::IOVSequence::disorder | ( | ) | [private] |
Definition at line 107 of file IOVSequence.cc.
References m_notOrdered, and m_sorted.
Referenced by add(), and truncate().
{ m_notOrdered=true; delete m_sorted; m_sorted=0; }
bool cond::IOVSequence::exist | ( | cond::Time_t | time | ) | const |
Definition at line 102 of file IOVSequence.cc.
References ora::PVector< Tp >::end(), findSince(), and iovs().
IOVSequence::const_iterator cond::IOVSequence::find | ( | cond::Time_t | time | ) | const |
Definition at line 85 of file IOVSequence.cc.
References begin, ora::PVector< Tp >::end(), end, iovs(), lastTill(), L1TEmulatorMonitor_cff::p, and cond::IOVElement::sinceTime().
Referenced by cond::IOVService::exportIOVRangeWithPayload(), findSince(), cond::IOVService::payloadToken(), and cond::IOVService::validity().
IOVSequence::const_iterator cond::IOVSequence::findSince | ( | cond::Time_t | time | ) | const |
Definition at line 97 of file IOVSequence.cc.
References ora::PVector< Tp >::end(), end, find(), iovs(), L1TEmulatorMonitor_cff::p, and cond::rpcobgas::time.
Referenced by exist().
cond::Time_t cond::IOVSequence::firstSince | ( | ) | const [inline] |
Definition at line 61 of file IOVSequence.h.
References ora::PVector< Tp >::front(), and iovs().
Referenced by cond::IOVService::exportIOVRangeWithPayload(), cond::IOVService::isValid(), and cond::IOVService::validity().
IOVSequence::Container const & cond::IOVSequence::iovs | ( | ) | const |
Definition at line 54 of file IOVSequence.cc.
References m_iovs, m_notOrdered, m_sorted, and sortMe().
Referenced by cond::IOVService::deleteAll(), exist(), cond::IOVService::exportIOVRangeWithPayload(), cond::IOVService::exportIOVWithPayload(), find(), findSince(), firstSince(), cond::IOVService::payloadContainerName(), cond::IOVService::payloadToken(), and cond::IOVService::validity().
{ if (m_sorted) return *m_sorted; if (m_notOrdered) return sortMe(); return m_iovs; }
cond::Time_t cond::IOVSequence::lastTill | ( | ) | const [inline] |
Definition at line 63 of file IOVSequence.h.
References m_lastTill.
Referenced by cond::IOVService::exportIOVRangeWithPayload(), cond::IOVService::exportIOVWithPayload(), find(), cond::IOVService::isValid(), and cond::IOVService::validity().
{ return m_lastTill;}
void cond::IOVSequence::loadAll | ( | ) | const |
Definition at line 48 of file IOVSequence.cc.
{ // m_provenance.get(); // m_description.get(); // m_userMetadata.get(); }
std::string const& cond::IOVSequence::metadataToken | ( | ) | const [inline] |
Definition at line 74 of file IOVSequence.h.
References m_metadata.
Referenced by cond::IOVService::exportIOVRangeWithPayload(), and cond::IOVService::exportIOVWithPayload().
{ return m_metadata;}
bool cond::IOVSequence::notOrdered | ( | ) | const [inline] |
IOVSequence & cond::IOVSequence::operator= | ( | IOVSequence const & | rh | ) |
Definition at line 36 of file IOVSequence.cc.
References m_iovs, m_lastTill, m_metadata, m_notOrdered, m_sorted, and m_timetype.
{ delete m_sorted; m_sorted=0; m_iovs = rh.m_iovs; m_timetype = rh.m_timetype; m_lastTill=rh.m_lastTill; m_notOrdered=rh.m_notOrdered; m_metadata = rh.m_metadata; return *this; }
Container const& cond::IOVSequence::piovs | ( | ) | const [inline] |
Container& cond::IOVSequence::piovs | ( | ) | [inline] |
Definition at line 87 of file IOVSequence.h.
References m_iovs.
Referenced by add(), and truncate().
{ return m_iovs;}
IOVSequence::Container const & cond::IOVSequence::sortMe | ( | ) | const [private] |
Definition at line 60 of file IOVSequence.cc.
References ora::PVector< Tp >::begin(), ora::PVector< Tp >::end(), m_iovs, m_sorted, cond::IOVElement::sinceTime(), and python::multivaluedict::sort().
Referenced by iovs().
{ delete m_sorted; // shall not be necessary; Container * local = new Container(m_iovs); std::sort(local->begin(), local->end(), boost::bind(std::less<cond::Time_t>(), boost::bind(&Item::sinceTime,_1), boost::bind(&Item::sinceTime,_2) ) ); m_sorted = local; return *m_sorted; }
cond::TimeType cond::IOVSequence::timeType | ( | ) | const [inline] |
Definition at line 58 of file IOVSequence.h.
References m_timetype, cond::timeTypeSpecs, and cond::TimeTypeSpecs::type.
Referenced by cond::IOVService::exportIOVRangeWithPayload(), cond::IOVService::exportIOVWithPayload(), and cond::IOVService::timeType().
{ return cond::timeTypeSpecs[m_timetype].type;}
size_t cond::IOVSequence::truncate | ( | ) |
Definition at line 79 of file IOVSequence.cc.
References disorder(), m_notOrdered, piovs(), ora::PVector< Tp >::pop_back(), and ora::PVector< Tp >::size().
void cond::IOVSequence::updateLastTill | ( | cond::Time_t | till | ) | [inline] |
Container cond::IOVSequence::m_iovs [private] |
Definition at line 100 of file IOVSequence.h.
Referenced by iovs(), operator=(), piovs(), and sortMe().
cond::Time_t cond::IOVSequence::m_lastTill [private] |
Definition at line 102 of file IOVSequence.h.
Referenced by lastTill(), operator=(), and updateLastTill().
std::string cond::IOVSequence::m_metadata [private] |
Definition at line 106 of file IOVSequence.h.
Referenced by metadataToken(), and operator=().
bool cond::IOVSequence::m_notOrdered [private] |
Definition at line 104 of file IOVSequence.h.
Referenced by add(), disorder(), iovs(), notOrdered(), operator=(), and truncate().
Container* cond::IOVSequence::m_sorted [mutable, private] |
Definition at line 117 of file IOVSequence.h.
Referenced by disorder(), iovs(), operator=(), sortMe(), and ~IOVSequence().
int cond::IOVSequence::m_timetype [private] |
Definition at line 101 of file IOVSequence.h.
Referenced by operator=(), and timeType().