diff --git a/Control/StoreGate/StoreGate/WriteCondHandle.h b/Control/StoreGate/StoreGate/WriteCondHandle.h index d0cc3fec19ef210c357e3e64134a9b35b44610c2..546d2edda15ec281ec5602ffab3c6bde00bc36de 100644 --- a/Control/StoreGate/StoreGate/WriteCondHandle.h +++ b/Control/StoreGate/StoreGate/WriteCondHandle.h @@ -40,9 +40,12 @@ namespace SG { const std::string& key() const { return m_hkey.key(); } const DataObjID& fullKey() const { return m_hkey.fullKey(); } - bool isValid(); + bool isValid() const; bool isValid(const EventIDBase& t) const; + bool isValid(EventIDRange& range) const; + bool isValid(const EventIDBase& t, EventIDRange& range) const; + template <typename R> void addDependency(SG::ReadCondHandle<R>& rch); @@ -243,13 +246,32 @@ namespace SG { template <typename T> bool - WriteCondHandle<T>::isValid() { + WriteCondHandle<T>::isValid() const { return (m_cc->valid(m_ctx.eventID())); } //--------------------------------------------------------------------------- + template <typename T> + bool + WriteCondHandle<T>::isValid(const EventIDBase& t, EventIDRange& range) const { + + return (m_cc->range(t, range)); + } + + + //--------------------------------------------------------------------------- + + template <typename T> + bool + WriteCondHandle<T>::isValid (EventIDRange& range) const { + + return (m_cc->range(m_ctx.eventID(), range)); + } + + //--------------------------------------------------------------------------- + // Can't take a const RCH, as RCH.range() can load the ptr. template <typename T> template< typename R>