CMS 3D CMS Logo

Public Types | Public Member Functions | Public Attributes

cond::IOV Class Reference

#include <IOV.h>

List of all members.

Public Types

typedef Container::const_iterator const_iterator
typedef std::vector< ItemContainer
typedef std::pair
< cond::Time_t, std::string > 
Item
typedef Container::iterator iterator

Public Member Functions

size_t add (cond::Time_t time, std::string const &token)
iterator find (cond::Time_t time)
const_iterator find (cond::Time_t time) const
 IOV ()
 IOV (int type, cond::Time_t since)
cond::TimeType timeType () const
virtual ~IOV ()

Public Attributes

cond::Time_t firstsince
Container iov
int timetype

Detailed Description

Definition at line 12 of file IOV.h.


Member Typedef Documentation

Definition at line 17 of file IOV.h.

typedef std::vector<Item> cond::IOV::Container

Definition at line 15 of file IOV.h.

typedef std::pair<cond::Time_t, std::string> cond::IOV::Item

Definition at line 14 of file IOV.h.

Definition at line 16 of file IOV.h.


Constructor & Destructor Documentation

cond::IOV::IOV ( ) [inline]

Definition at line 19 of file IOV.h.

{}
cond::IOV::IOV ( int  type,
cond::Time_t  since 
) [inline]

Definition at line 20 of file IOV.h.

                                    :
      timetype(type), firstsince(since){}
virtual cond::IOV::~IOV ( ) [inline, virtual]

Definition at line 23 of file IOV.h.

{}

Member Function Documentation

size_t cond::IOV::add ( cond::Time_t  time,
std::string const &  token 
) [inline]

Definition at line 26 of file IOV.h.

References iov, ora::QueryableVector< Tp >::push_back(), and ora::QueryableVector< Tp >::size().

                                                         {
      iov.push_back(Item(time, token));
      return iov.size()-1;
    }
iterator cond::IOV::find ( cond::Time_t  time) [inline]

Definition at line 31 of file IOV.h.

References ora::QueryableVector< Tp >::begin(), ora::QueryableVector< Tp >::end(), first, and iov.

Referenced by cond::IOVProxy::find(), and cond::IOVProxy::setRange().

                                   {
      return std::lower_bound(iov.begin(),iov.end(),Item(time,""),
                              boost::bind(std::less<cond::Time_t>(),
                                          boost::bind(&Item::first,_1),
                                          boost::bind(&Item::first,_2)
                                          )
                              );
    }
const_iterator cond::IOV::find ( cond::Time_t  time) const [inline]

Definition at line 40 of file IOV.h.

References ora::QueryableVector< Tp >::begin(), ora::QueryableVector< Tp >::end(), first, and iov.

                                               {
      return std::lower_bound(iov.begin(),iov.end(),Item(time,""),
                              boost::bind(std::less<cond::Time_t>(),
                                          boost::bind(&Item::first,_1),
                                          boost::bind(&Item::first,_2)
                                          )
                              );
    }
cond::TimeType cond::IOV::timeType ( ) const [inline]

Definition at line 50 of file IOV.h.

References timetype, cond::timeTypeSpecs, and cond::TimeTypeSpecs::type.

Referenced by cond::IOVProxy::timetype().

{ return cond::timeTypeSpecs[timetype].type;}

Member Data Documentation

Definition at line 55 of file IOV.h.

Definition at line 53 of file IOV.h.

Referenced by add(), copyObject(), find(), cond::IOVProxy::iov(), and publishObjects().

Definition at line 54 of file IOV.h.

Referenced by timeType().