CMS 3D CMS Logo

Public Member Functions | Private Member Functions

edm::VectorInputSource Class Reference

#include <VectorInputSource.h>

Inheritance diagram for edm::VectorInputSource:
edm::EDInputSource edm::InputSource edm::ProductRegistryHelper edm::PoolSource

List of all members.

Public Member Functions

void dropUnwantedBranches (std::vector< std::string > const &wantedBranches)
template<typename T >
size_t loopRandom (EventPrincipal &cache, size_t number, T eventOperator)
template<typename T >
size_t loopRandomWithID (EventPrincipal &cache, LuminosityBlockID const &id, size_t number, T eventOperator)
template<typename T >
size_t loopSequential (EventPrincipal &cache, size_t number, T eventOperator)
template<typename T >
size_t loopSequentialWithID (EventPrincipal &cache, LuminosityBlockID const &id, size_t number, T eventOperator)
template<typename T , typename Collection >
size_t loopSpecified (EventPrincipal &cache, Collection const &events, T eventOperator)
 VectorInputSource (ParameterSet const &pset, InputSourceDescription const &desc)
virtual ~VectorInputSource ()

Private Member Functions

void clearEventPrincipal (EventPrincipal &cache)
virtual void dropUnwantedBranches_ (std::vector< std::string > const &wantedBranches)=0
virtual EventPrincipalreadOneRandom (EventPrincipal &cache)=0
virtual EventPrincipalreadOneRandomWithID (EventPrincipal &cache, LuminosityBlockID const &id)=0
virtual EventPrincipalreadOneSequential (EventPrincipal &cache)=0
virtual EventPrincipalreadOneSequentialWithID (EventPrincipal &cache, LuminosityBlockID const &id)=0
virtual EventPrincipalreadOneSpecified (EventPrincipal &cache, EventID const &event)=0

Detailed Description

Definition at line 19 of file VectorInputSource.h.


Constructor & Destructor Documentation

edm::VectorInputSource::VectorInputSource ( ParameterSet const &  pset,
InputSourceDescription const &  desc 
) [explicit]

Definition at line 8 of file VectorInputSource.cc.

                                                                                                   :
    EDInputSource(pset, desc) {}
edm::VectorInputSource::~VectorInputSource ( ) [virtual]

Definition at line 11 of file VectorInputSource.cc.

{}

Member Function Documentation

void edm::VectorInputSource::clearEventPrincipal ( EventPrincipal cache) [private]

Definition at line 19 of file VectorInputSource.cc.

References edm::EventPrincipal::clearEventPrincipal().

Referenced by loopRandom(), loopRandomWithID(), loopSequential(), loopSequentialWithID(), and loopSpecified().

                                                              {
    cache.clearEventPrincipal();
  }
void edm::VectorInputSource::dropUnwantedBranches ( std::vector< std::string > const &  wantedBranches)

Definition at line 14 of file VectorInputSource.cc.

References dropUnwantedBranches_().

                                                                                    {
    this->dropUnwantedBranches_(wantedBranches);
  }
virtual void edm::VectorInputSource::dropUnwantedBranches_ ( std::vector< std::string > const &  wantedBranches) [private, pure virtual]

Implemented in edm::PoolSource.

Referenced by dropUnwantedBranches().

template<typename T >
size_t edm::VectorInputSource::loopRandom ( EventPrincipal cache,
size_t  number,
T  eventOperator 
)

Definition at line 50 of file VectorInputSource.h.

References clearEventPrincipal(), i, and readOneRandom().

                                                                                            {
    size_t i = 0U;
    for(; i < number; ++i) {
      clearEventPrincipal(cache);
      EventPrincipal* ep = readOneRandom(cache);
      if(!ep) break;
      eventOperator(*ep);
    }
    return i;
  }
template<typename T >
size_t edm::VectorInputSource::loopRandomWithID ( EventPrincipal cache,
LuminosityBlockID const &  id,
size_t  number,
T  eventOperator 
)

Definition at line 74 of file VectorInputSource.h.

References clearEventPrincipal(), i, and readOneRandomWithID().

                                                                                                                               {
    size_t i = 0U;
    for(; i < number; ++i) {
      clearEventPrincipal(cache);
      EventPrincipal* ep = readOneRandomWithID(cache, id);
      if(!ep) break;
      eventOperator(*ep);
    }
    return i;
  }
template<typename T >
size_t edm::VectorInputSource::loopSequential ( EventPrincipal cache,
size_t  number,
T  eventOperator 
)

Definition at line 62 of file VectorInputSource.h.

References clearEventPrincipal(), i, and readOneSequential().

                                                                                                {
    size_t i = 0U;
    for(; i < number; ++i) {
      clearEventPrincipal(cache);
      EventPrincipal* ep = readOneSequential(cache);
      if(!ep) break;
      eventOperator(*ep);
    }
    return i;
  }
template<typename T >
size_t edm::VectorInputSource::loopSequentialWithID ( EventPrincipal cache,
LuminosityBlockID const &  id,
size_t  number,
T  eventOperator 
)

Definition at line 86 of file VectorInputSource.h.

References clearEventPrincipal(), i, and readOneSequentialWithID().

                                                                                                                                   {
    size_t i = 0U;
    for(; i < number; ++i) {
      clearEventPrincipal(cache);
      EventPrincipal* ep = readOneSequentialWithID(cache, id);
      if(!ep) break;
      eventOperator(*ep);
    }
    return i;
  }
template<typename T , typename Collection >
size_t edm::VectorInputSource::loopSpecified ( EventPrincipal cache,
Collection const &  events,
T  eventOperator 
)

Definition at line 98 of file VectorInputSource.h.

References clearEventPrincipal(), i, and readOneSpecified().

                                                                                                          {
    size_t i = 0U;
    for(typename Collection::const_iterator it = events.begin(), itEnd = events.end(); it != itEnd; ++it) {
      clearEventPrincipal(cache);
      EventPrincipal* ep = readOneSpecified(cache, *it);
      if(!ep) break;
      eventOperator(*ep);
      ++i;
    }
    return i;
  }
virtual EventPrincipal* edm::VectorInputSource::readOneRandom ( EventPrincipal cache) [private, pure virtual]

Implemented in edm::PoolSource.

Referenced by loopRandom().

virtual EventPrincipal* edm::VectorInputSource::readOneRandomWithID ( EventPrincipal cache,
LuminosityBlockID const &  id 
) [private, pure virtual]

Implemented in edm::PoolSource.

Referenced by loopRandomWithID().

virtual EventPrincipal* edm::VectorInputSource::readOneSequential ( EventPrincipal cache) [private, pure virtual]

Implemented in edm::PoolSource.

Referenced by loopSequential().

virtual EventPrincipal* edm::VectorInputSource::readOneSequentialWithID ( EventPrincipal cache,
LuminosityBlockID const &  id 
) [private, pure virtual]

Implemented in edm::PoolSource.

Referenced by loopSequentialWithID().

virtual EventPrincipal* edm::VectorInputSource::readOneSpecified ( EventPrincipal cache,
EventID const &  event 
) [private, pure virtual]

Implemented in edm::PoolSource.

Referenced by loopSpecified().