1 #ifndef __JLANG__JPIPE__ 
    2 #define __JLANG__JPIPE__ 
   72         if (
valve.is_open()) {
 
   74           while (
in.hasNext()) {
 
  145   template<
class JHead_t, 
class JTail_t>
 
  147     public JPipe<JHead_t>,
 
  148     public JPipe<JTail_t>,
 
  166       JPipe<JHead_t>(input, valve, selector, regulator),
 
  167       JPipe<JTail_t>(input, valve, selector, regulator)
 
  175   template<
class JHead_t>
 
  177     public JPipe<JHead_t>
 
  191       JPipe<JHead_t>(input, valve, selector, regulator)
 
  202   template<
class T, 
int N>
 
  264       JPipe<
T>(input, valve, selector, regulator)
 
  332     template<
class JBase_t>
 
  347   template<
class T, 
int N>
 
const JObjectSelector< T > & selector
 
JPipe(JObjectIterator< T > &input, const JValve< T > &valve, const JObjectSelector< T > &selector, const JRegulator ®ulator)
Constructor. 
 
const JRegulator & regulator
 
static JSinglePointer< JMultiPipe< T, N > > pipe
Declaration of common pipe. 
 
friend JMultiPipe< T, N+1 > & operator|(JMultiPipe &left, const JRegulator &right)
Recursive expansion of multi-pipe. 
 
JObjectIterator< T > & in
 
JMultiPipe(JObjectIterator< T > &input, const JRegulator ®ulator)
Constructor. 
 
unsigned int skip_type
Type definition for number of objects to skip. 
 
JMultiPipe(JObjectIterator< T > &input, const JValve< T > &valve, const JObjectSelector< T > &selector, const JRegulator ®ulator)
Constructor. 
 
JObjectIterator< T >::pointer_type pointer_type
 
Auxiliary class for a type holder. 
 
Interface of object iteration for a single data type. 
 
Auxiliary class for multiplexing object iterators. 
 
bool is_valid() const 
Check validity of pointer. 
 
Auxiliary class for selection of data type. 
 
Auxiliary class for object iteration via pipe, i.e. operator: 
 
Auxiliary class for object iteration via multiple pipes, e.g. operator: 
 
friend JObjectMultiplexer< T, JBase_t > & operator|(JMultiPipe &left, const JType< JBase_t > &right)
Pipe operator for multiplexing. 
 
The template JSinglePointer class can be used to hold a pointer to an object. 
 
Interface for selection of objects. 
 
Interface for controlling object throughput. 
 
const JValve< T > & valve
 
do set_variable OUTPUT_DIRECTORY $WORKDIR T
 
Auxiliary class for no type definition. 
 
virtual bool hasNext() override
Check availability of next element. 
 
JPipe(JObjectIterator< typelist > &input, const JValve< typelist > &valve, const JObjectSelector< typelist > &selector, const JRegulator ®ulator)
Constructor. 
 
virtual skip_type skip(const skip_type ns) override
Skip items. 
 
JTypeList< JHead_t, JTail_t > typelist
 
JPipe(JObjectIterator< JHead_t > &input, const JValve< JHead_t > &valve, const JObjectSelector< JHead_t > &selector, const JRegulator ®ulator)
Constructor. 
 
friend void operator|(JMultiPipe &left, JObjectOutput< T > &right)
Pipe terminator. 
 
virtual bool accept() const 
Accept. 
 
JMultiPipe(JObjectIterator< T > &input)
Constructor. 
 
Template interface of object output for single data type. 
 
friend JMultiPipe< T, N+1 > & operator|(JMultiPipe &left, const JValve< T > &right)
Recursive expansion of multi-pipe. 
 
virtual const pointer_type & next() override
Get next element. 
 
JMultiPipe(JObjectIterator< T > &input, const JValve< T > &valve)
Constructor. 
 
friend JMultiPipe< T, N+1 > & operator|(JMultiPipe &left, const JObjectSelector< T > &right)
Recursive expansion of multi-pipe. 
 
JMultiPipe(JObjectIterator< T > &input, const JObjectSelector< T > &selector)
Constructor. 
 
virtual void reset() override
Reset pointer.