CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Types | Public Member Functions | Private Attributes
ora::Range< Tp > Class Template Reference

#include <QueryableVector.h>

Public Types

typedef RangeIterator< Tp > iterator
 
typedef const Tp & reference
 
typedef RangeReverseIterator< Tp > reverse_iterator
 
typedef std::vector< std::pair
< size_t, Tp > > 
store_base_type
 

Public Member Functions

size_t backIndex () const
 
iterator begin () const
 
iterator end () const
 
size_t frontIndex () const
 
Rangeoperator= (const Range &rhs)
 
 Range ()
 
 Range (boost::shared_ptr< store_base_type > &data)
 
 Range (const Range &rhs)
 
reverse_iterator rbegin () const
 
reverse_iterator rend () const
 
size_t size () const
 
virtual ~Range ()
 

Private Attributes

boost::shared_ptr
< store_base_type
m_data
 

Detailed Description

template<typename Tp>
class ora::Range< Tp >

Definition at line 103 of file QueryableVector.h.

Member Typedef Documentation

template<typename Tp>
typedef RangeIterator<Tp> ora::Range< Tp >::iterator

Definition at line 106 of file QueryableVector.h.

template<typename Tp>
typedef const Tp& ora::Range< Tp >::reference

Definition at line 105 of file QueryableVector.h.

template<typename Tp>
typedef RangeReverseIterator<Tp> ora::Range< Tp >::reverse_iterator

Definition at line 107 of file QueryableVector.h.

template<typename Tp>
typedef std::vector<std::pair<size_t,Tp> > ora::Range< Tp >::store_base_type

Definition at line 108 of file QueryableVector.h.

Constructor & Destructor Documentation

template<class Tp >
ora::Range< Tp >::Range ( )

Definition at line 108 of file QueryableVectorImpl.h.

108  :m_data(new store_base_type ){
109 }
boost::shared_ptr< store_base_type > m_data
std::vector< std::pair< size_t, Tp > > store_base_type
template<class Tp >
ora::Range< Tp >::Range ( boost::shared_ptr< store_base_type > &  data)
explicit

Definition at line 111 of file QueryableVectorImpl.h.

111  :m_data(data){
112 }
boost::shared_ptr< store_base_type > m_data
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:82
template<class Tp >
ora::Range< Tp >::Range ( const Range< Tp > &  rhs)

Definition at line 114 of file QueryableVectorImpl.h.

114  :m_data(rhs.m_data){
115 }
boost::shared_ptr< store_base_type > m_data
template<class Tp >
ora::Range< Tp >::~Range ( )
virtual

Definition at line 117 of file QueryableVectorImpl.h.

117  {
118 }

Member Function Documentation

template<class Tp >
size_t ora::Range< Tp >::backIndex ( ) const

Definition at line 151 of file QueryableVectorImpl.h.

151  {
152  return m_data->back().first;
153 }
boost::shared_ptr< store_base_type > m_data
template<class Tp >
ora::Range< Tp >::iterator ora::Range< Tp >::begin ( void  ) const

Definition at line 127 of file QueryableVectorImpl.h.

127  {
128  return RangeIterator<Tp>(m_data->begin());
129 }
boost::shared_ptr< store_base_type > m_data
template<class Tp >
ora::Range< Tp >::iterator ora::Range< Tp >::end ( void  ) const

Definition at line 131 of file QueryableVectorImpl.h.

Referenced by Types.LuminosityBlockRange::cppID(), and Types.EventRange::cppID().

131  {
132  return RangeIterator<Tp>(m_data->end());
133 }
boost::shared_ptr< store_base_type > m_data
template<class Tp >
size_t ora::Range< Tp >::frontIndex ( ) const

Definition at line 147 of file QueryableVectorImpl.h.

147  {
148  return m_data->front().first;
149 }
boost::shared_ptr< store_base_type > m_data
template<class Tp >
ora::Range< Tp > & ora::Range< Tp >::operator= ( const Range< Tp > &  rhs)

Definition at line 120 of file QueryableVectorImpl.h.

References ora::Range< Tp >::m_data.

120  {
121  if(&rhs != this){
122  m_data = rhs.m_data;
123  }
124  return *this;
125 }
boost::shared_ptr< store_base_type > m_data
template<class Tp >
ora::Range< Tp >::reverse_iterator ora::Range< Tp >::rbegin ( ) const

Definition at line 135 of file QueryableVectorImpl.h.

135  {
136  return RangeReverseIterator<Tp>(m_data->rbegin());
137 }
boost::shared_ptr< store_base_type > m_data
template<class Tp >
ora::Range< Tp >::reverse_iterator ora::Range< Tp >::rend ( ) const

Definition at line 139 of file QueryableVectorImpl.h.

139  {
140  return RangeReverseIterator<Tp>(m_data->rend());
141 }
boost::shared_ptr< store_base_type > m_data
template<class Tp >
size_t ora::Range< Tp >::size ( void  ) const

Definition at line 143 of file QueryableVectorImpl.h.

143  {
144  return m_data->size();
145 }
boost::shared_ptr< store_base_type > m_data

Member Data Documentation

template<typename Tp>
boost::shared_ptr<store_base_type> ora::Range< Tp >::m_data
private

Definition at line 137 of file QueryableVector.h.

Referenced by ora::Range< Tp >::operator=().