JANA2
C++ framework for multi-threaded data processing
|
Classes | |
struct | Port |
Public Types | |
enum class | FireResult { NotRunYet , KeepGoing , ComeBackLater , Finished } |
using | OutputData = std::array< std::pair< JEvent *, int >, 2 > |
Public Member Functions | |
const std::string & | get_name () |
JLogger & | get_logger () |
bool | is_parallel () |
bool | is_source () |
bool | is_sink () |
Port & | get_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 void | initialize () |
virtual FireResult | execute (size_t location_id) |
virtual void | fire (JEvent *, OutputData &, size_t &, FireResult &) |
virtual void | finalize () |
void | create_ports (size_t inputs, size_t outputs) |
void | attach (JEventQueue *queue, size_t port) |
void | attach (JEventPool *pool, size_t port) |
JEvent * | pull (size_t input_port, size_t location_id) |
void | push (OutputData &outputs, size_t output_count, size_t location_id) |
Protected Types | |
using | clock_t = std::chrono::steady_clock |
Protected Attributes | |
int | m_next_input_port =0 |
clock_t::time_point | m_next_visit_time =clock_t::now() |
std::vector< Port > | m_ports |
JLogger | m_logger |
Friends | |
class | JTopologyBuilder |