Public Types | Public Member Functions | Private Attributes | List of all members
WireCell::FunctionNodeProc Class Reference

#include <GenPipeline.h>

Inheritance diagram for WireCell::FunctionNodeProc:
WireCell::FilterProc WireCell::SourceProc WireCell::SinkProc WireCell::Proc WireCell::Proc

Public Types

typedef WireCell::IFunctionNodeBase node_t
 
typedef std::shared_ptr< node_tnode_pointer_t
 

Public Member Functions

 FunctionNodeProc (node_pointer_t node)
 
virtual ~FunctionNodeProc ()
 
virtual Pipeinput_pipe ()
 
virtual Pipeoutput_pipe ()
 
virtual bool operator() ()
 
- Public Member Functions inherited from WireCell::FilterProc
virtual ~FilterProc ()
 
- Public Member Functions inherited from WireCell::SourceProc
virtual ~SourceProc ()
 
- Public Member Functions inherited from WireCell::Proc
virtual ~Proc ()
 
- Public Member Functions inherited from WireCell::SinkProc
virtual ~SinkProc ()
 

Private Attributes

Pipe iq
 
Pipe oq
 
node_pointer_t node
 

Detailed Description

Definition at line 79 of file GenPipeline.h.

Member Typedef Documentation

Definition at line 82 of file GenPipeline.h.

Definition at line 81 of file GenPipeline.h.

Constructor & Destructor Documentation

WireCell::FunctionNodeProc::FunctionNodeProc ( node_pointer_t  node)
inline

Definition at line 84 of file GenPipeline.h.

84 : node(node) {}
virtual WireCell::FunctionNodeProc::~FunctionNodeProc ( )
inlinevirtual

Definition at line 85 of file GenPipeline.h.

85 {}

Member Function Documentation

virtual Pipe& WireCell::FunctionNodeProc::input_pipe ( )
inlinevirtual

Implements WireCell::SinkProc.

Definition at line 87 of file GenPipeline.h.

87  {
88  return iq;
89  }
virtual bool WireCell::FunctionNodeProc::operator() ( void  )
inlinevirtual

Implements WireCell::Proc.

Definition at line 94 of file GenPipeline.h.

94  {
95  if (iq.empty()) { return false; }
96  boost::any anyout;
97  bool ok = (*node)(iq.front(), anyout);
98  if (!ok) return false;
99  iq.pop();
100  oq.push(anyout);
101  return true;
102  }
virtual Pipe& WireCell::FunctionNodeProc::output_pipe ( )
inlinevirtual

Implements WireCell::SourceProc.

Definition at line 90 of file GenPipeline.h.

90  {
91  return oq;
92  }

Member Data Documentation

Pipe WireCell::FunctionNodeProc::iq
private

Definition at line 105 of file GenPipeline.h.

node_pointer_t WireCell::FunctionNodeProc::node
private

Definition at line 106 of file GenPipeline.h.

Pipe WireCell::FunctionNodeProc::oq
private

Definition at line 105 of file GenPipeline.h.


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