JANA2
C++ framework for multi-threaded data processing
JEventMapArrow Class Reference
Inheritance diagram for JEventMapArrow:
[legend]
Collaboration diagram for JEventMapArrow:
[legend]

Public Types

enum  PortIndex {
  EVENT_IN =0 ,
  EVENT_OUT =1
}
 
- Public Types inherited from JArrow
enum class  FireResult {
  NotRunYet ,
  KeepGoing ,
  ComeBackLater ,
  Finished
}
 
using OutputData = std::array< std::pair< JEvent *, int >, 2 >
 

Public Member Functions

 JEventMapArrow (std::string name)
 
void add_source (JEventSource *source)
 
void add_unfolder (JEventUnfolder *unfolder)
 
void add_processor (JEventProcessor *proc)
 
void fire (JEvent *input, OutputData &outputs, size_t &output_count, JArrow::FireResult &status)
 
void initialize () final
 
void finalize () final
 
- Public Member Functions inherited from JArrow
const std::string & get_name ()
 
JLoggerget_logger ()
 
bool is_parallel ()
 
bool is_source ()
 
bool is_sink ()
 
Portget_port (size_t port_index)
 
int get_next_port_index ()
 
void set_name (std::string name)
 
void set_logger (JLogger logger)
 
void set_is_parallel (bool is_parallel)
 
void set_is_source (bool is_source)
 
void set_is_sink (bool is_sink)
 
 JArrow (std::string name, bool is_parallel, bool is_source, bool is_sink)
 
virtual FireResult execute (size_t location_id)
 
void create_ports (size_t inputs, size_t outputs)
 
void attach (JEventQueue *queue, size_t port)
 
void attach (JEventPool *pool, size_t port)
 
JEventpull (size_t input_port, size_t location_id)
 
void push (OutputData &outputs, size_t output_count, size_t location_id)
 

Additional Inherited Members

- Protected Types inherited from JArrow
using clock_t = std::chrono::steady_clock
 
- Protected Attributes inherited from JArrow
int m_next_input_port =0
 
clock_t::time_point m_next_visit_time =clock_t::now()
 
std::vector< Portm_ports
 
JLogger m_logger
 

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