#include <DataFormats/Common/interface/LazyGetter.h>
Public Types | |
typedef std::vector< T > | record_type |
Public Member Functions | |
LazyAdapter (const LazyUnpacker< T > *, const record_type *, const LazyGetter< T > *) | |
Constructor. | |
const RegionIndex< T > & | operator() (const RegionIndex< T > ®ion) const |
() operator for construction of iterator | |
Private Attributes | |
const LazyGetter< T > * | getter_ |
record_type * | record_ |
LazyUnpacker< T > * | unpacker_ |
Definition at line 222 of file LazyGetter.h.
typedef std::vector<T> edm::LazyAdapter< T >::record_type |
Definition at line 225 of file LazyGetter.h.
edm::LazyAdapter< T >::LazyAdapter | ( | const LazyUnpacker< T > * | iunpacker, | |
const record_type * | irecord, | |||
const LazyGetter< T > * | getter | |||
) | [inline] |
Constructor.
Definition at line 241 of file LazyGetter.h.
00241 : 00242 unpacker_(const_cast< LazyUnpacker<T>* >(iunpacker)), 00243 record_(const_cast<record_type*>(irecord)), 00244 getter_(getter) {}
const RegionIndex< T > & edm::LazyAdapter< T >::operator() | ( | const RegionIndex< T > & | region | ) | const [inline] |
() operator for construction of iterator
Definition at line 249 of file LazyGetter.h.
References edm::RegionIndex< T >::finish(), edm::LazyAdapter< T >::getter_, edm::LazyAdapter< T >::record_, edm::RegionIndex< T >::region(), edm::RegionIndex< T >::start(), edm::RegionIndex< T >::unpacked(), edm::LazyAdapter< T >::unpacker_, and edm::RegionIndex< T >::updateLazyGetter().
00250 { 00251 RegionIndex<T>& indexref = const_cast< RegionIndex<T>& >(index); 00252 if (!index.unpacked()) { 00253 indexref.start(record_->size()); 00254 unpacker_->fill(index.region(),*record_); 00255 indexref.unpacked(true); 00256 indexref.finish(record_->size()); 00257 indexref.updateLazyGetter(getter_); 00258 } 00259 return index; 00260 }
const LazyGetter<T>* edm::LazyAdapter< T >::getter_ [private] |
record_type* edm::LazyAdapter< T >::record_ [private] |
LazyUnpacker<T>* edm::LazyAdapter< T >::unpacker_ [private] |