WireCellToolkit
Wire Cell Simulation, Signal Process and Reconstruction Toolki for Liquid Argon Detectors
WireCell::Fanout< Data, Address > Class Template Reference

#include <Faninout.h>

Public Types

typedef Data result_type
 
typedef Address address_type
 
typedef std::deque< result_typedata_queue
 
typedef std::map< int, data_queuequeue_map
 
typedef boost::signals2::signal< result_type()> signal
 
typedef signal::slot_type slot
 

Public Member Functions

void connect (const slot &s)
 
void address (const address_type &addr)
 Register an address. More...
 
result_type operator() (const address_type &addr)
 

Detailed Description

template<typename Data, typename Address = int>
class WireCell::Fanout< Data, Address >

A fanout which takes in Data from a connected slot and buffers it into set of addressable queues.

Definition at line 14 of file Faninout.h.

Member Typedef Documentation

◆ address_type

template<typename Data , typename Address = int>
typedef Address WireCell::Fanout< Data, Address >::address_type

Definition at line 18 of file Faninout.h.

◆ data_queue

template<typename Data , typename Address = int>
typedef std::deque<result_type> WireCell::Fanout< Data, Address >::data_queue

Definition at line 19 of file Faninout.h.

◆ queue_map

template<typename Data , typename Address = int>
typedef std::map< int, data_queue > WireCell::Fanout< Data, Address >::queue_map

Definition at line 20 of file Faninout.h.

◆ result_type

template<typename Data , typename Address = int>
typedef Data WireCell::Fanout< Data, Address >::result_type

Definition at line 17 of file Faninout.h.

◆ signal

template<typename Data , typename Address = int>
typedef boost::signals2::signal<result_type ()> WireCell::Fanout< Data, Address >::signal

Definition at line 23 of file Faninout.h.

◆ slot

template<typename Data , typename Address = int>
typedef signal::slot_type WireCell::Fanout< Data, Address >::slot

Definition at line 25 of file Faninout.h.

Member Function Documentation

◆ address()

template<typename Data , typename Address = int>
void WireCell::Fanout< Data, Address >::address ( const address_type addr)
inline

Register an address.

Definition at line 31 of file Faninout.h.

◆ connect()

template<typename Data , typename Address = int>
void WireCell::Fanout< Data, Address >::connect ( const slot s)
inline

Definition at line 28 of file Faninout.h.

◆ operator()()

template<typename Data , typename Address = int>
result_type WireCell::Fanout< Data, Address >::operator() ( const address_type addr)
inline

Return a data from the given address. If the address has not yet been registered it will be but any previously returned data will not be seen.

Definition at line 38 of file Faninout.h.


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