WireCellToolkit
Wire Cell Simulation, Signal Process and Reconstruction Toolki for Liquid Argon Detectors
WireCell::ISplitNodeBase Class Referenceabstract

#include <ISplitNode.h>

Inheritance diagram for WireCell::ISplitNodeBase:
Collaboration diagram for WireCell::ISplitNodeBase:

Public Types

typedef std::shared_ptr< ISplitNodeBasepointer
 
typedef std::vector< boost::any > any_vector
 
- Public Types inherited from WireCell::INode
enum  NodeCategory {
  unknown, sourceNode, sinkNode, functionNode,
  queuedoutNode, joinNode, splitNode, faninNode,
  fanoutNode, multioutNode, hydraNode
}
 
- Public Types inherited from WireCell::IComponent< INode >
typedef std::shared_ptr< INodepointer
 Access subclass facet by pointer. More...
 
typedef std::vector< pointervector
 Vector of shared pointers. More...
 
- Public Types inherited from WireCell::Interface
typedef std::shared_ptr< Interfacepointer
 

Public Member Functions

virtual ~ISplitNodeBase ()
 
virtual bool operator() (const boost::any &anyin, any_vector &anyout)=0
 The calling signature: More...
 
virtual NodeCategory category ()
 Return the behavior category type. More...
 
virtual int concurrency ()
 Split nodes can usually do their thing stateless. More...
 
- Public Member Functions inherited from WireCell::INode
virtual ~INode ()
 
virtual std::string signature ()=0
 
virtual std::vector< std::string > input_types ()
 
virtual std::vector< std::string > output_types ()
 
virtual void reset ()
 
- Public Member Functions inherited from WireCell::IComponent< INode >
virtual ~IComponent ()
 
- Public Member Functions inherited from WireCell::Interface
virtual ~Interface ()
 

Detailed Description

A node which splits 1 data into N objects each of a distinct type.

Definition at line 18 of file ISplitNode.h.

Member Typedef Documentation

◆ any_vector

typedef std::vector<boost::any> WireCell::ISplitNodeBase::any_vector

Definition at line 25 of file ISplitNode.h.

◆ pointer

Definition at line 21 of file ISplitNode.h.

Constructor & Destructor Documentation

◆ ~ISplitNodeBase()

ISplitNodeBase::~ISplitNodeBase ( )
virtual

Definition at line 162 of file IfaceDesctructors.cxx.

Member Function Documentation

◆ category()

virtual NodeCategory WireCell::ISplitNodeBase::category ( )
inlinevirtual

Return the behavior category type.

Implements WireCell::INode.

Definition at line 30 of file ISplitNode.h.

◆ concurrency()

virtual int WireCell::ISplitNodeBase::concurrency ( )
inlinevirtual

Split nodes can usually do their thing stateless.

Reimplemented from WireCell::INode.

Definition at line 35 of file ISplitNode.h.

◆ operator()()

virtual bool WireCell::ISplitNodeBase::operator() ( const boost::any &  anyin,
any_vector anyout 
)
pure virtual

The calling signature:

Implemented in WireCell::ISplitNode< InputType, OutputTuple >, and WireCell::ISplitNode< IFrame, std::tuple< IFrame, IFrame > >.

Here is the caller graph for this function:

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