1 #ifndef __JSUPPORT__JTREESCANNERINTERFACE__ 
    2 #define __JSUPPORT__JTREESCANNERINTERFACE__ 
   33   template<
class T, 
class JEvaluator_t = JNullType>
 
   46   template<
class JClass_t>
 
   56     struct basic_iterator :
 
   66       virtual bool equals(
const T& cursor)
 const 
   68         return index == cursor.index;
 
   79         return ++index < pTreeScanner->getEntries();
 
  102         return (index += offset) < pTreeScanner->getEntries();
 
  114         return (index -= offset) >= 0;
 
  211       return JClass_t::Class_Name();
 
  219       public basic_iterator<iterator>
 
  239         return this->pTreeScanner->getEntry(this->index);
 
  250         return *(this->pTreeScanner->getEntry(this->index));
 
  264         return second.index - first.index;
 
  284     struct reverse_iterator :
 
  285       public basic_iterator<reverse_iterator>
 
  305         return  (this->pTreeScanner->getEntry(this->pTreeScanner->getEntries() - this->index - 1));
 
  316         return *(this->pTreeScanner->getEntry(this->pTreeScanner->getEntries() - this->index - 1));
 
  328                                              const reverse_iterator& second)
 
  330         return second.index - first.index;
 
  342         basic_iterator<reverse_iterator>(p, i)
 
  354       return getEntries() == 0;
 
  365       return iterator(
this, this->getLowerLimit());
 
  376       return iterator(
this, this->getUpperLimit() < this->getEntries() ? this->getUpperLimit() : this->getEntries());
 
  387       return reverse_iterator(
this, this->getLowerLimit());
 
  398       return reverse_iterator(
this, this->getUpperLimit() < this->getEntries() ? this->getUpperLimit() : this->getEntries());
 
  409   template<
class JClass_t, 
class JEvaluator_t>
 
  446     Long64_t 
find(
const T& 
object)
 const 
Auxiliaries for defining the range of iterations of objects.
 
Scanning of objects from multiple files according a format that follows from the extension of each fi...
 
Template interface for method bool decrement().
 
Interface for object iteration with rewinding.
 
virtual JClass_t * getEntry(Long64_t index)=0
Get entry at given index.
 
virtual void configure(const JMultipleFileScanner_t &file_list, const JLimit &limit)=0
Configure.
 
void configure(const JMultipleFileScanner_t &file_list)
Configure.
 
JRewindableObjectIterator< JClass_t >::pointer_type pointer_type
 
iterator begin()
Get iterator to begin of data.
 
virtual const char * getClassName() const
Get actual class name.
 
virtual Long64_t getEntries() const =0
Get number of entries.
 
reverse_iterator rend()
Get reverse iterator to end of data.
 
iterator end()
Get iterator to end of data.
 
virtual counter_type getCounter() const =0
Get internal counter.
 
bool empty() const
Check emptyness.
 
reverse_iterator rbegin()
Get reverse iterator to begin of data.
 
Auxiliary interface for direct access of elements in ROOT TChain.
 
const JEvaluator_t & getEvaluator() const
Get evaluator.
 
virtual Long64_t find(const value_type value) const =0
Find index of element that is closest in value to given value.
 
JEvaluator_t::value_type value_type
Type definition of time value.
 
Long64_t find(const T &object) const
Find index of element that is closest in value to given object.
 
JTreeScannerInterface(const JEvaluator_t &evaluator=JEvaluator_t())
Constructor.
 
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
 
Long64_t counter_type
Type definition for counter.
 
Support classes and methods for experiment specific I/O.
 
Template definition of auxiliary base class for comparison of data structures.
 
Auxiliary class for no type definition.
 
Auxiliary class for defining the range of iterations of objects.
 
Auxiliary base class for list of file names.
 
virtual bool decrement() override
Decrement iterator.
 
virtual bool decrement(const size_t offset) override
Decrement iterator.
 
virtual bool increment(const size_t offset) override
Increment iterator.
 
counter_type get() const
Get index.
 
basic_iterator()
Default constructor.
 
virtual bool increment() override
Increment iterator.
 
JTreeScannerInterface * pTreeScanner
 
virtual bool equals(const T &cursor) const
Equality of iterator.
 
basic_iterator(JTreeScannerInterface *p, const counter_type i)
Constructor.
 
iterator()
Default constructor.
 
friend difference_type distance(const iterator &first, const iterator &second)
Get distance between two iterators.
 
const data_type * operator->()
Smart pointer operator.
 
iterator(JTreeScannerInterface *p, const counter_type i)
Constructor.
 
counter_type difference_type
 
const data_type & operator*()
Dereference operator.
 
const data_type * operator->()
Smart pointer operator.
 
reverse_iterator(JTreeScannerInterface *p, const counter_type i)
Constructor.
 
reverse_iterator()
Default constructor.
 
counter_type difference_type
 
const data_type & operator*()
Dereference operator.
 
friend difference_type distance(const reverse_iterator &first, const reverse_iterator &second)
Get distance between two iterators.