1#ifndef __JLANG__JOBJECTMULTIPLEXER__ 
    2#define __JLANG__JOBJECTMULTIPLEXER__ 
   18namespace JPP { 
using namespace JLANG; }
 
   32  template<class JDerived_t, class JBase_t = typename JBaseClass<JDerived_t>::data_type>
 
  107  template<
class JDerived_t, 
class JBase_t>
 
  123  template<
class JHead_t, 
class JTail_t, 
class JBase_t>
 
  199  template<
class JHead_t, 
class JTail_t, 
class JBase_t>
 
  207  template<
class JHead_t, 
class JBase_t>
 
Auxiliary class to identify common base class in type list.
 
Interface of object iteration for a single data type.
 
virtual bool hasNext()=0
Check availability of next element.
 
virtual const pointer_type & next()=0
Get next element.
 
JObjectIterator< JHead_t > iterator_type
 
JValve< JHead_t > valve_type
 
JObjectMultiplexer(iterator_type &input, const valve_type &valve=valve_type())
Constructor.
 
JObjectIterator< JBase_t >::pointer_type pointer_type
 
JSinglePointer< JObjectMultiplexer< JHead_t, JBase_t > > multiplexer_type
 
JObjectIterator< JBase_t >::pointer_type pointer_type
 
static multiplexer_type multiplexer
 
virtual const pointer_type & next() override
Get next element.
 
JTypeList< JHead_t, JTail_t > typelist
 
friend void operator|(JObjectMultiplexer &in, JObjectOutput< JBase_t > &out)
Pipe operator.
 
virtual bool hasNext() override
Check availability of next element.
 
JSinglePointer< JObjectMultiplexer< typelist, JBase_t > > multiplexer_type
 
JValve< typelist > valve_type
 
JObjectMultiplexer(iterator_type &input, const valve_type &valve=valve_type())
Constructor.
 
JObjectIterator< typelist > iterator_type
 
Auxiliary class for multiplexing object iterators.
 
virtual bool hasNext() override
Check availability of next element.
 
JValve< JDerived_t > valve_type
 
JObjectMultiplexer(iterator_type &input, const valve_type &valve=valve_type())
Constructor.
 
friend void operator|(JObjectMultiplexer &in, JObjectOutput< JBase_t > &out)
Pipe operator.
 
virtual const pointer_type & next() override
Get next element.
 
JSinglePointer< JObjectMultiplexer< JDerived_t, JBase_t > > multiplexer_type
 
static multiplexer_type multiplexer
Multiplexer.
 
JObjectIterator< JBase_t >::pointer_type pointer_type
 
JObjectIterator< JDerived_t > iterator_type
 
Template interface of object output for single data type.
 
virtual void reset() override
Reset pointer.
 
The template JSinglePointer class can be used to hold a pointer to an object.
 
Auxiliary class for selection of data type.
 
bool is_open() const
Check if valve is open.
 
Auxiliary classes and methods for language specific functionality.
 
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
 
Auxiliary class for no type definition.