Jpp
Public Types | Public Member Functions | Private Attributes | List of all members
JLANG::JAbstractRewindableObjectReader< T > Struct Template Referenceabstract

Abstract interface for object reading with rewinding. More...

#include <JAbstractObjectReader.hh>

Inheritance diagram for JLANG::JAbstractRewindableObjectReader< T >:
JLANG::JRewindableObjectIterator< T > JLANG::JAbstractObjectReader< T > JLANG::JObjectIterator< T > JLANG::JRewindable< T > JLANG::JObjectIterator< T > JLANG::JRewindableObjectReader< T > JLANG::JSTDObjectReader< T >

Public Types

typedef JPointer< T > pointer_type
 Type definition of pointer_type. More...
 
typedef JObjectIterator< T >::pointer_type pointer_type
 

Public Member Functions

virtual JRewindableObjectIterator< T > * getHelper () const =0
 Get helper. More...
 
virtual void rewind ()
 Rewind. More...
 
virtual bool hasNext ()=0
 Check availability of next element. More...
 
virtual const pointer_typenext ()=0
 Get next element. More...
 
virtual skip_type skip (const skip_type ns)
 Skip items. More...
 
virtual bool hasNext ()
 Check availability of next element. More...
 
virtual const pointer_typenext ()
 Get next element. More...
 
virtual skip_type skip (const skip_type ns)
 Skip items. More...
 

Private Attributes

pointer_type ps
 

Detailed Description

template<class T>
struct JLANG::JAbstractRewindableObjectReader< T >

Abstract interface for object reading with rewinding.

This class implements the JRewindableObjectIterator interface by transferring the interface methods to a helper object via a single interface method getHelper().

Definition at line 89 of file JAbstractObjectReader.hh.

Member Typedef Documentation

◆ pointer_type [1/2]

template<class T>
typedef JPointer<T> JLANG::JObjectIterator< T >::pointer_type
inherited

Type definition of pointer_type.

Definition at line 56 of file JObjectIterator.hh.

◆ pointer_type [2/2]

template<class T>
typedef JObjectIterator<T>::pointer_type JLANG::JAbstractObjectReader< T >::pointer_type
inherited

Definition at line 27 of file JAbstractObjectReader.hh.

Member Function Documentation

◆ getHelper()

template<class T>
virtual JRewindableObjectIterator<T>* JLANG::JAbstractRewindableObjectReader< T >::getHelper ( ) const
pure virtual

◆ rewind()

template<class T>
virtual void JLANG::JAbstractRewindableObjectReader< T >::rewind ( )
inlinevirtual

Rewind.

Implements JLANG::JRewindable< T >.

Reimplemented in JLANG::JSTDObjectReader< JTypeList< JHead_t, JTail_t > >.

Definition at line 104 of file JAbstractObjectReader.hh.

105  {
106  if (this->getHelper() != NULL) {
107  this->getHelper()->rewind();
108  }
109  }

◆ hasNext() [1/2]

template<class T>
virtual bool JLANG::JObjectIterator< T >::hasNext ( )
pure virtualinherited

Check availability of next element.

Returns
true if the iteration has more elements; else false

Implemented in JSUPPORT::JMultipleFileScanner< T >, JSUPPORT::JMultipleFileScanner<>, JSUPPORT::JMultipleFileScanner< JTail_t >, JSUPPORT::JMultipleFileScanner< JHead_t >, JSUPPORT::JMultipleFileScanner< KM3NETDAQ::JDAQEvent >, JSUPPORT::JMultipleFileScanner< JDAQSummaryslice >, JSUPPORT::JMultipleFileScanner< JTypeList< JDAQEvent, JTypelist_t > >, JLANG::JNullIterator< T >, JSUPPORT::JSingleFileScanner< T >, JSUPPORT::JSingleFileScanner<>, JSUPPORT::JSingleFileScanner< JTail_t >, JSUPPORT::JSingleFileScanner< JHead_t >, JLANG::JObjectMultiplexer< JTypeList< JHead_t, JTail_t >, JBase_t >, JROOT::JRootFileReader< T, false >, JGIZMO::JMarkerAttributes, JGIZMO::JLineAttributes, JLANG::JObjectSampler< T, JSampler_t >, JLANG::JObjectSampler< JDAQSummaryslice, JRandomSampler >, JSUPPORT::JTriggeredFileScanner< JTypelist_t >, JLANG::JSTDObjectIterator< T >, JROOT::JTreeReaderObjectIterator< T >, JLANG::JPipe< T >, JLANG::JPipe< JTail_t >, JLANG::JPipe< JHead_t >, JLANG::JObjectMultiplexer< JDerived_t, JBase_t >, JLANG::JObjectMultiplexer< JHead_t, JBase_t >, JLANG::JObjectMultiplexer< JTail_t, JBase_t >, JLANG::JAbstractObjectIterator< T >, JLANG::JAbstractObjectIterator< Head >, JLANG::JAbstractObjectIterator< JTail_t >, JLANG::JAbstractObjectIterator< JHead_t >, JLANG::JAbstractObjectIterator< JTriggerParameters >, JLANG::JAbstractObjectIterator< JPhotonPath >, JLANG::JAbstractObjectReader< T >, JLANG::JConversionIterator< JInput_t, JOutput_t >, JLANG::JAbstractObjectReader< const T >, JLANG::JAbstractObjectReader< JTail_t >, JLANG::JAbstractObjectReader< JHead_t >, JLANG::JAbstractObjectReader< KM3NETDAQ::JDAQEvent >, JLANG::JAbstractObjectReader< JDAQSummaryslice >, and JLANG::JAbstractObjectReader< JTypeList< JDAQEvent, JTypelist_t > >.

◆ next() [1/2]

template<class T>
virtual const pointer_type& JLANG::JObjectIterator< T >::next ( )
pure virtualinherited

Get next element.

Returns
pointer to element

Implemented in JSUPPORT::JMultipleFileScanner< T >, JSUPPORT::JMultipleFileScanner<>, JSUPPORT::JMultipleFileScanner< JTail_t >, JSUPPORT::JMultipleFileScanner< JHead_t >, JSUPPORT::JMultipleFileScanner< KM3NETDAQ::JDAQEvent >, JSUPPORT::JMultipleFileScanner< JDAQSummaryslice >, JSUPPORT::JMultipleFileScanner< JTypeList< JDAQEvent, JTypelist_t > >, JLANG::JNullIterator< T >, JSUPPORT::JSingleFileScanner< T >, JSUPPORT::JSingleFileScanner<>, JSUPPORT::JSingleFileScanner< JTail_t >, JSUPPORT::JSingleFileScanner< JHead_t >, JLANG::JObjectMultiplexer< JTypeList< JHead_t, JTail_t >, JBase_t >, JROOT::JRootFileReader< T, false >, JLANG::JObjectSampler< T, JSampler_t >, JLANG::JObjectSampler< JDAQSummaryslice, JRandomSampler >, JGIZMO::JMarkerAttributes, JGIZMO::JLineAttributes, JLANG::JPipe< T >, JLANG::JPipe< JTail_t >, JLANG::JPipe< JHead_t >, JSUPPORT::JTriggeredFileScanner< JTypelist_t >, JROOT::JTreeReaderObjectIterator< T >, JLANG::JSTDObjectIterator< T >, JLANG::JObjectMultiplexer< JDerived_t, JBase_t >, JLANG::JObjectMultiplexer< JHead_t, JBase_t >, JLANG::JObjectMultiplexer< JTail_t, JBase_t >, JLANG::JAbstractObjectIterator< T >, JLANG::JAbstractObjectIterator< Head >, JLANG::JAbstractObjectIterator< JTail_t >, JLANG::JAbstractObjectIterator< JHead_t >, JLANG::JAbstractObjectIterator< JTriggerParameters >, JLANG::JAbstractObjectIterator< JPhotonPath >, JSUPPORT::JParallelFileScanner< JTypeList< JDAQEvent, JTypelist_t >, JMultipleFileScanner >, JLANG::JAbstractObjectReader< T >, JLANG::JConversionIterator< JInput_t, JOutput_t >, JLANG::JAbstractObjectReader< const T >, JLANG::JAbstractObjectReader< JTail_t >, JLANG::JAbstractObjectReader< JHead_t >, JLANG::JAbstractObjectReader< KM3NETDAQ::JDAQEvent >, JLANG::JAbstractObjectReader< JDAQSummaryslice >, and JLANG::JAbstractObjectReader< JTypeList< JDAQEvent, JTypelist_t > >.

◆ skip() [1/2]

template<class T>
virtual skip_type JLANG::JObjectIterator< T >::skip ( const skip_type  ns)
inlinevirtualinherited

◆ hasNext() [2/2]

template<class T>
virtual bool JLANG::JAbstractObjectReader< T >::hasNext ( )
inlinevirtualinherited

Check availability of next element.

Returns
true if the iteration has more elements; else false

Implements JLANG::JObjectIterator< T >.

Definition at line 43 of file JAbstractObjectReader.hh.

44  {
45  return (this->getHelper() != NULL && this->getHelper()->hasNext());
46  }

◆ next() [2/2]

template<class T>
virtual const pointer_type& JLANG::JAbstractObjectReader< T >::next ( )
inlinevirtualinherited

Get next element.

Returns
pointer to element

Implements JLANG::JObjectIterator< T >.

Definition at line 54 of file JAbstractObjectReader.hh.

55  {
56  if (this->getHelper() != NULL)
57  return this->getHelper()->next();
58  else
59  return ps;
60  }

◆ skip() [2/2]

template<class T>
virtual skip_type JLANG::JAbstractObjectReader< T >::skip ( const skip_type  ns)
inlinevirtualinherited

Skip items.

Parameters
nsnumber of items to skip
Returns
number of items skipped

Reimplemented from JLANG::JObjectIterator< T >.

Definition at line 69 of file JAbstractObjectReader.hh.

70  {
71  if (this->getHelper() != NULL)
72  return this->getHelper()->skip(ns);
73  else
74  return 0;
75  }

Member Data Documentation

◆ ps

template<class T>
pointer_type JLANG::JAbstractObjectReader< T >::ps
privateinherited

Definition at line 78 of file JAbstractObjectReader.hh.


The documentation for this struct was generated from the following file:
JLANG::skip_type
unsigned int skip_type
Type definition for number of objects to skip.
Definition: JObjectIterator.hh:25
JLANG::JAbstractObjectReader::ps
pointer_type ps
Definition: JAbstractObjectReader.hh:78
JLANG::JAbstractObjectReader::getHelper
virtual JObjectIterator< T > * getHelper() const =0
Get helper.
JLANG::JObjectIterator::hasNext
virtual bool hasNext()=0
Check availability of next element.
JLANG::JAbstractObjectReader::hasNext
virtual bool hasNext()
Check availability of next element.
Definition: JAbstractObjectReader.hh:43
JLANG::JAbstractRewindableObjectReader::getHelper
virtual JRewindableObjectIterator< T > * getHelper() const =0
Get helper.
JLANG::JObjectIterator::next
virtual const pointer_type & next()=0
Get next element.