Jpp 21.0.0-rc.3
the software that should make you happy
Loading...
Searching...
No Matches
JLANG::JObjectReader< T > Struct Template Referenceabstract

Auxiliary class for object reading. More...

#include <JObjectReader.hh>

Inheritance diagram for JLANG::JObjectReader< T >:
JLANG::JObjectIterator< T > JLANG::JAbstractObjectReader< T > JLANG::JObjectIterator< T >

Public Types

typedef std::shared_ptr< JObjectIterator< T > > helper_type
 
typedef JObjectIterator< T >::pointer_type pointer_type
 

Public Member Functions

 JObjectReader ()
 Default constructor.
 
virtual JObjectIterator< T > * getHelper () const override
 Get helper.
 
virtual bool hasNext ()=0
 Check availability of next element.
 
virtual const pointer_typenext ()=0
 Get next element.
 
virtual skip_type skip (const skip_type ns)
 Skip items.
 
bool is_valid () const
 Check validity of helper.
 
virtual bool hasNext () override
 Check availability of next element.
 
virtual const pointer_typenext () override
 Get next element.
 
virtual skip_type skip (const skip_type ns) override
 Skip items.
 

Private Attributes

pointer_type ps
 

Detailed Description

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

Auxiliary class for object reading.

This class implements the JAbstractObjectReader interface.

Definition at line 24 of file JObjectReader.hh.

Member Typedef Documentation

◆ helper_type

template<class T >
std::shared_ptr< JObjectIterator<T> > JLANG::JObjectReader< T >::helper_type

Definition at line 30 of file JObjectReader.hh.

◆ pointer_type

template<class T >
JObjectIterator<T>::pointer_type JLANG::JObjectReader< T >::pointer_type

Definition at line 31 of file JObjectReader.hh.

Constructor & Destructor Documentation

◆ JObjectReader()

template<class T >
JLANG::JObjectReader< T >::JObjectReader ( )
inline

Default constructor.

Definition at line 36 of file JObjectReader.hh.

37 {}

Member Function Documentation

◆ getHelper()

template<class T >
virtual JObjectIterator< T > * JLANG::JObjectReader< T >::getHelper ( ) const
inlineoverridevirtual

Get helper.

Returns
helper

Implements JLANG::JAbstractObjectReader< T >.

Definition at line 45 of file JObjectReader.hh.

46 {
47 return this->get();
48 }

◆ 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 JLANG::JAbstractObjectIterator< T >, JLANG::JAbstractObjectIterator< Head >, JLANG::JAbstractObjectIterator< JHead_t >, JLANG::JAbstractObjectIterator< JTail_t >, JLANG::JAbstractObjectIterator< JTriggerParameters >, JLANG::JAbstractObjectReader< T >, JLANG::JAbstractObjectReader< const event_type >, JLANG::JAbstractObjectReader< JDAQSummaryslice >, JLANG::JAbstractObjectReader< JHead_t >, JLANG::JAbstractObjectReader< JTail_t >, JLANG::JAbstractObjectReader< JTypeList< JDAQEvent, JNullType > >, JLANG::JAbstractObjectReader< KM3NETDAQ::JDAQEvent >, JLANG::JConversionIterator< JInput_t, JOutput_t >, JLANG::JNullIterator< T >, JLANG::JObjectMultiplexer< JDerived_t, JBase_t >, JLANG::JObjectMultiplexer< JHead_t, JBase_t >, JLANG::JObjectMultiplexer< JTail_t, JBase_t >, JLANG::JObjectMultiplexer< JTypeList< JHead_t, JTail_t >, JBase_t >, JLANG::JObjectSampler< T, JSampler_t >, JLANG::JObjectSampler< JDAQSummaryslice, JRandomSampler >, JLANG::JObjectSampler< T, JSampler >, JLANG::JPipe< T >, JLANG::JPipe< JHead_t >, JLANG::JPipe< JTail_t >, JLANG::JSTDObjectIterator< T >, JROOT::JLineAttributes, JROOT::JMarkerAttributes, JROOT::JRootFileReader< T, false >, JROOT::JTreeReaderObjectIterator< T >, JSUPPORT::JMultipleFileScanner< T >, JSUPPORT::JMultipleFileScanner< JDAQSummaryslice >, JSUPPORT::JMultipleFileScanner< JHead_t >, JSUPPORT::JMultipleFileScanner< JTail_t >, JSUPPORT::JMultipleFileScanner< JTypeList< JDAQEvent, JNullType > >, JSUPPORT::JMultipleFileScanner< KM3NETDAQ::JDAQEvent >, JSUPPORT::JMultipleFileScanner<>, JSUPPORT::JSingleFileScanner< T >, JSUPPORT::JSingleFileScanner< JHead_t >, JSUPPORT::JSingleFileScanner< JTail_t >, JSUPPORT::JSingleFileScanner<>, and JSUPPORT::JTriggeredFileScanner< JTypelist_t, JFileScanner_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 JLANG::JAbstractObjectIterator< T >, JLANG::JAbstractObjectIterator< Head >, JLANG::JAbstractObjectIterator< JHead_t >, JLANG::JAbstractObjectIterator< JTail_t >, JLANG::JAbstractObjectIterator< JTriggerParameters >, JLANG::JAbstractObjectReader< T >, JLANG::JAbstractObjectReader< const event_type >, JLANG::JAbstractObjectReader< JDAQSummaryslice >, JLANG::JAbstractObjectReader< JHead_t >, JLANG::JAbstractObjectReader< JTail_t >, JLANG::JAbstractObjectReader< JTypeList< JDAQEvent, JNullType > >, JLANG::JAbstractObjectReader< KM3NETDAQ::JDAQEvent >, JLANG::JConversionIterator< JInput_t, JOutput_t >, JLANG::JNullIterator< T >, JLANG::JObjectMultiplexer< JDerived_t, JBase_t >, JLANG::JObjectMultiplexer< JHead_t, JBase_t >, JLANG::JObjectMultiplexer< JTail_t, JBase_t >, JLANG::JObjectMultiplexer< JTypeList< JHead_t, JTail_t >, JBase_t >, JLANG::JObjectSampler< T, JSampler_t >, JLANG::JObjectSampler< JDAQSummaryslice, JRandomSampler >, JLANG::JObjectSampler< T, JSampler >, JLANG::JPipe< T >, JLANG::JPipe< JHead_t >, JLANG::JPipe< JTail_t >, JLANG::JSTDObjectIterator< T >, JROOT::JLineAttributes, JROOT::JMarkerAttributes, JROOT::JRootFileReader< T, false >, JROOT::JTreeReaderObjectIterator< T >, JSUPPORT::JMultipleFileScanner< T >, JSUPPORT::JMultipleFileScanner< JDAQSummaryslice >, JSUPPORT::JMultipleFileScanner< JHead_t >, JSUPPORT::JMultipleFileScanner< JTail_t >, JSUPPORT::JMultipleFileScanner< JTypeList< JDAQEvent, JNullType > >, JSUPPORT::JMultipleFileScanner< KM3NETDAQ::JDAQEvent >, JSUPPORT::JMultipleFileScanner<>, JSUPPORT::JParallelFileScanner< T, JFileScanner_t >, JSUPPORT::JParallelFileScanner< JTypeList< JDAQEvent, JNullType >, JMultipleFileScanner >, JSUPPORT::JSingleFileScanner< T >, JSUPPORT::JSingleFileScanner< JHead_t >, JSUPPORT::JSingleFileScanner< JTail_t >, JSUPPORT::JSingleFileScanner<>, and JSUPPORT::JTriggeredFileScanner< JTypelist_t, JFileScanner_t >.

◆ skip() [1/2]

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

Skip items.

Parameters
nsnumber of items to skip
Returns
number of items skipped

Reimplemented in JLANG::JAbstractObjectReader< T >, JLANG::JAbstractObjectReader< const event_type >, JLANG::JAbstractObjectReader< JDAQSummaryslice >, JLANG::JAbstractObjectReader< JHead_t >, JLANG::JAbstractObjectReader< JTail_t >, JLANG::JAbstractObjectReader< JTypeList< JDAQEvent, JNullType > >, JLANG::JAbstractObjectReader< KM3NETDAQ::JDAQEvent >, JLANG::JPipe< T >, JLANG::JPipe< JHead_t >, JLANG::JPipe< JTail_t >, JLANG::JSTDObjectIterator< T >, JROOT::JRootFileReader< T, false >, JROOT::JTreeReaderObjectIterator< T >, JSUPPORT::JMultipleFileScanner< T >, JSUPPORT::JMultipleFileScanner< JDAQSummaryslice >, JSUPPORT::JMultipleFileScanner< JHead_t >, JSUPPORT::JMultipleFileScanner< JTail_t >, JSUPPORT::JMultipleFileScanner< JTypeList< JDAQEvent, JNullType > >, JSUPPORT::JMultipleFileScanner< JTypeList< JHead_t, JTail_t > >, JSUPPORT::JMultipleFileScanner< KM3NETDAQ::JDAQEvent >, JSUPPORT::JMultipleFileScanner<>, JSUPPORT::JSingleFileScanner< T >, JSUPPORT::JSingleFileScanner< JHead_t >, JSUPPORT::JSingleFileScanner< JTail_t >, JSUPPORT::JSingleFileScanner< JTypeList< JHead_t, JTail_t > >, and JSUPPORT::JSingleFileScanner<>.

Definition at line 90 of file JObjectIterator.hh.

91 {
92 skip_type i = 0;
93
94 for ( ; i != ns && hasNext(); ++i) {
95 next();
96 }
97
98 return i;
99 }
virtual bool hasNext()=0
Check availability of next element.
virtual const pointer_type & next()=0
Get next element.
unsigned int skip_type
Type definition for number of objects to skip.

◆ is_valid()

template<class T >
bool JLANG::JAbstractObjectReader< T >::is_valid ( ) const
inlineinherited

Check validity of helper.

Returns
true if helper not null; else false

Definition at line 35 of file JAbstractObjectReader.hh.

36 {
37 return this->getHelper() != NULL;
38 }
virtual JObjectIterator< T > * getHelper() const =0
Get helper.

◆ hasNext() [2/2]

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

Check availability of next element.

Returns
true if the iteration has more elements; else false

Implements JLANG::JObjectIterator< T >.

Definition at line 54 of file JAbstractObjectReader.hh.

55 {
56 return (this->is_valid() && this->getHelper()->hasNext());
57 }
bool is_valid() const
Check validity of helper.
virtual bool hasNext() override
Check availability of next element.

◆ next() [2/2]

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

Get next element.

Returns
pointer to element

Implements JLANG::JObjectIterator< T >.

Definition at line 65 of file JAbstractObjectReader.hh.

66 {
67 if (this->is_valid())
68 return this->getHelper()->next();
69 else
70 return ps;
71 }

◆ skip() [2/2]

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

Skip items.

Parameters
nsnumber of items to skip
Returns
number of items skipped

Reimplemented from JLANG::JObjectIterator< T >.

Definition at line 80 of file JAbstractObjectReader.hh.

81 {
82 if (this->is_valid())
83 return this->getHelper()->skip(ns);
84 else
85 return 0;
86 }

Member Data Documentation

◆ ps

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

Definition at line 89 of file JAbstractObjectReader.hh.


The documentation for this struct was generated from the following file: