| JANA2
    C++ framework for multi-threaded data processing | 
| Public Member Functions | |
| void | Init () override | 
| void | set_configure_fn (std::function< void(JTopologyBuilder &)> configure_fn) | 
| set_cofigure_fn lets the user provide a lambda that sets up a topology after all components have been loaded. | |
| void | create_topology () | 
| void | attach_level (JEventLevel current_level, JUnfoldArrow *parent_unfolder, JFoldArrow *parent_folder) | 
| void | connect_to_first_available (JArrow *upstream, size_t upstream_port_id, std::vector< std::pair< JArrow *, size_t > > downstreams) | 
| void | connect (JArrow *upstream, size_t upstream_port_id, JArrow *downstream, size_t downstream_port_id) | 
| std::pair< JEventTapArrow *, JEventTapArrow * > | create_tap_chain (std::vector< JEventProcessor * > &procs, std::string name) | 
| std::string | print_topology () | 
|  Public Member Functions inherited from JService | |
| virtual | ~JService ()=default | 
| JServices may require other JServices, which may be loaded out of order from different plugins. | |
| void | DoInit (JServiceLocator *) | 
| virtual void | acquire_services (JServiceLocator *) | 
|  Public Member Functions inherited from jana::components::JComponent | |
| void | SetLevel (JEventLevel level) | 
| void | SetCallbackStyle (CallbackStyle style) | 
| void | SetPrefix (std::string prefix) | 
| void | SetTypeName (std::string type_name) | 
| For convenience, we provide a NAME_OF_THIS macro so that the user doesn't have to store the type name as a string, because that could get out of sync if automatic refactoring tools are used. | |
| JApplication * | GetApplication () const | 
| JLogger & | GetLogger () | 
| void | Wire (JApplication *app) | 
| bool | IsEnabled () const | 
| void | SetEnabled (bool is_enabled) | 
| std::string | GetPrefix () const | 
| JEventLevel | GetLevel () const | 
| std::string | GetLoggerName () const | 
| std::string | GetPluginName () const | 
| void | SetLoggerName (std::string logger_name) | 
| void | SetPluginName (std::string plugin_name) | 
| std::string | GetTypeName () const | 
| virtual void | Summarize (JComponentSummary &) const | 
| CallbackStyle | GetCallbackStyle () const | 
| void | SetApplication (JApplication *app) | 
| void | SetLogger (JLogger logger) | 
| template<typename F > | |
| void | CallWithJExceptionWrapper (std::string func_name, F func) | 
| void | DoInit () | 
| void | RegisterParameter (ParameterBase *parameter) | 
| void | RegisterService (ServiceBase *service) | 
| const std::vector< ParameterBase * > | GetAllParameters () const | 
| Public Attributes | |
| Service< JParameterManager > | m_params {this} | 
| std::shared_ptr< JComponentManager > | m_components | 
| std::vector< JArrow * > | arrows | 
| std::vector< JEventQueue * > | queues | 
| std::vector< JEventPool * > | pools | 
| size_t | m_max_inflight_events = 1 | 
| size_t | m_location_count = 1 | 
| bool | m_enable_stealing = false | 
| int | m_affinity = 0 | 
| int | m_locality = 0 | 
| std::function< void(JTopologyBuilder &)> | m_configure_topology | 
| JProcessorMapping | mapping | 
| Additional Inherited Members | |
|  Public Types inherited from jana::components::JComponent | |
| enum class | CallbackStyle { LegacyMode , ExpertMode } | 
|  Protected Attributes inherited from jana::components::JComponent | |
| std::vector< ParameterBase * > | m_parameters | 
| std::vector< ServiceBase * > | m_services | 
| JEventLevel | m_level = JEventLevel::PhysicsEvent | 
| CallbackStyle | m_callback_style = CallbackStyle::LegacyMode | 
| std::string | m_prefix | 
| std::string | m_plugin_name | 
| std::string | m_logger_name | 
| std::string | m_type_name | 
| std::atomic_bool | m_is_initialized {false} | 
| std::atomic_bool | m_is_finalized {false} | 
| std::mutex | m_mutex | 
| JApplication * | m_app = nullptr | 
| JLogger | m_logger | 
| bool | m_is_enabled = true | 
| 
 | overridevirtual | 
Reimplemented from jana::components::JComponent.
| void JTopologyBuilder::set_configure_fn | ( | std::function< void(JTopologyBuilder &)> | configure_fn | ) | 
set_cofigure_fn lets the user provide a lambda that sets up a topology after all components have been loaded.
It provides an 'empty' JArrowTopology which has been furnished with a pointer to the JComponentManager, the JEventPool, and the JProcessorMapping (in case you care about NUMA details). However, it does not contain any queues or arrows. You have to furnish those yourself.