CMS 3D CMS Logo

Public Member Functions | Private Attributes

ora::PVectorIteratorHandler Class Reference

#include <PVectorHandler.h>

Inheritance diagram for ora::PVectorIteratorHandler:
ora::IArrayIteratorHandler

List of all members.

Public Member Functions

void increment ()
 Increments itself.
void * object ()
 Returns the current object.
 PVectorIteratorHandler (const Reflex::Environ< long > &collEnv, Reflex::CollFuncTable &collProxy, const Reflex::Type &iteratorReturnType, size_t startElement)
 Constructor.
Reflex::Type & returnType ()
 Returns the return type of the iterator dereference method.
virtual ~PVectorIteratorHandler ()
 Destructor.

Private Attributes

Reflex::Environ< long > m_collEnv
 Structure containing parameters of the collection instance.
Reflex::CollFuncTable & m_collProxy
 Proxy of the generic collection.
void * m_currentElement
 Current element object pointer.
Reflex::Type m_returnType
 The return type of the iterator dereference method.
size_t m_startElement

Detailed Description

Definition at line 13 of file PVectorHandler.h.


Constructor & Destructor Documentation

ora::PVectorIteratorHandler::PVectorIteratorHandler ( const Reflex::Environ< long > &  collEnv,
Reflex::CollFuncTable &  collProxy,
const Reflex::Type &  iteratorReturnType,
size_t  startElement 
)

Constructor.

Definition at line 7 of file PVectorHandler.cc.

References i, increment(), m_collEnv, m_collProxy, and m_currentElement.

                                                                         :
  m_returnType(iteratorReturnType),
  m_collEnv(collEnv),
  m_collProxy(collProxy),
  m_currentElement(0),
  m_startElement(startElement){
  // retrieve the first element
  m_currentElement = m_collProxy.first_func(&m_collEnv);

  if(startElement){
    size_t i = 0;
    while(i<startElement){
      increment();
      i++;
    }
  }
}
ora::PVectorIteratorHandler::~PVectorIteratorHandler ( ) [virtual]

Destructor.

Definition at line 28 of file PVectorHandler.cc.

                                                  {
}

Member Function Documentation

void ora::PVectorIteratorHandler::increment ( ) [virtual]

Increments itself.

Implements ora::IArrayIteratorHandler.

Definition at line 32 of file PVectorHandler.cc.

Referenced by PVectorIteratorHandler().

                                    {
  // this is requiredd! It sets the number of memory slots (of size sizeof(Class)) to be used for the step
  m_collEnv.fIdx = 1;
  m_currentElement = m_collProxy.next_func(&m_collEnv);
}
void * ora::PVectorIteratorHandler::object ( ) [virtual]

Returns the current object.

Implements ora::IArrayIteratorHandler.

Definition at line 39 of file PVectorHandler.cc.

                                 {
  return m_currentElement;
}
Reflex::Type & ora::PVectorIteratorHandler::returnType ( ) [virtual]

Returns the return type of the iterator dereference method.

Implements ora::IArrayIteratorHandler.

Definition at line 44 of file PVectorHandler.cc.

                                     {
  return m_returnType;
}

Member Data Documentation

Reflex::Environ<long> ora::PVectorIteratorHandler::m_collEnv [private]

Structure containing parameters of the collection instance.

Definition at line 41 of file PVectorHandler.h.

Referenced by PVectorIteratorHandler().

Reflex::CollFuncTable& ora::PVectorIteratorHandler::m_collProxy [private]

Proxy of the generic collection.

Definition at line 44 of file PVectorHandler.h.

Referenced by PVectorIteratorHandler().

Current element object pointer.

Definition at line 47 of file PVectorHandler.h.

Referenced by PVectorIteratorHandler().

The return type of the iterator dereference method.

Definition at line 38 of file PVectorHandler.h.

Definition at line 49 of file PVectorHandler.h.