Public Member Functions | List of all members
WireCell::SigProc::FrameSplitter Class Reference

#include <FrameSplitter.h>

Inheritance diagram for WireCell::SigProc::FrameSplitter:
WireCell::IFrameSplitter WireCell::ISplitNode< IFrame, std::tuple< IFrame, IFrame > > WireCell::ISplitNodeBase WireCell::INode WireCell::IComponent< INode > WireCell::Interface

Public Member Functions

 FrameSplitter ()
 
virtual ~FrameSplitter ()
 
virtual bool operator() (const input_pointer &in, output_tuple_type &out)
 
- Public Member Functions inherited from WireCell::IFrameSplitter
virtual ~IFrameSplitter ()
 
virtual std::string signature ()
 
- Public Member Functions inherited from WireCell::ISplitNode< IFrame, std::tuple< IFrame, IFrame > >
virtual ~ISplitNode ()
 
virtual bool operator() (const boost::any &anyin, any_vector &anyvout)
 The calling signature: More...
 
virtual std::vector< std::stringinput_types ()
 
virtual std::vector< std::stringoutput_types ()
 
- Public Member Functions inherited from WireCell::ISplitNodeBase
virtual ~ISplitNodeBase ()
 
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 void reset ()
 
- Public Member Functions inherited from WireCell::IComponent< INode >
virtual ~IComponent ()
 
- Public Member Functions inherited from WireCell::Interface
virtual ~Interface ()
 

Additional Inherited Members

- Public Types inherited from WireCell::IFrameSplitter
typedef std::shared_ptr< IFrameSplitterpointer
 
- Public Types inherited from WireCell::ISplitNode< IFrame, std::tuple< IFrame, IFrame > >
typedef tuple_helper< std::tuple< IFrame, IFrame > > port_helper_type
 
typedef port_helper_type::template WrappedConst< std::shared_ptr >::type output_tuple_type
 
typedef tuple_helper< output_tuple_typeoutput_helper_type
 
typedef IFrame input_type
 
typedef std::shared_ptr< const IFrameinput_pointer
 
- Public Types inherited from WireCell::ISplitNodeBase
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
 

Detailed Description

Definition at line 12 of file FrameSplitter.h.

Constructor & Destructor Documentation

WireCell::SigProc::FrameSplitter::FrameSplitter ( )
FrameSplitter::~FrameSplitter ( )
virtual

Definition at line 17 of file FrameSplitter.cxx.

18 {
19 }

Member Function Documentation

bool FrameSplitter::operator() ( const input_pointer in,
output_tuple_type out 
)
virtual

Implements WireCell::ISplitNode< IFrame, std::tuple< IFrame, IFrame > >.

Definition at line 21 of file FrameSplitter.cxx.

22 {
23  if (!in) {
24  std::cerr << "FrameSplitter: passing on EOS\n";
25  }
26  else {
27  std::cerr << "FrameSplitter: passing on frame: "<<in->ident()<<":";
28  for (auto tag : in->trace_tags()) {
29  auto tt = FrameTools::tagged_traces(in, tag);
30  std::cerr << " " << tag << "[" << tt.size() << "]";
31  }
32  std::cerr << std::endl;
33  }
34 
35  get<0>(out) = in;
36  get<1>(out) = in;
37 
38  return true;
39 }
ITrace::vector tagged_traces(IFrame::pointer frame, IFrame::tag_t tag)
Definition: FrameTools.cxx:111
Definition: type_traits.h:56
QTextStream & endl(QTextStream &s)

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