Horizon Official Technical Documentation
Horizon::System::RuntimeContextChain Class Reference

#include <System.hpp>

+ Inheritance diagram for Horizon::System::RuntimeContextChain:
+ Collaboration diagram for Horizon::System::RuntimeContextChain:

Classes

class  ContextControlAgent
 
class  ContextQueueManager
 

Public Member Functions

 RuntimeContextChain (runtime_module_type run_module)
 
std::shared_ptr< RuntimeContextpop ()
 
void push (std::shared_ptr< RuntimeContext > context)
 
bool process ()
 
ContextQueueManagerget_queue_manager ()
 
ContextControlAgentget_control_agent ()
 
runtime_module_type get_module_type ()
 
void set_module_type (runtime_module_type module_t)
 
std::string get_uuid_string ()
 

Public Attributes

ContextQueueManager _queue_manager
 
ContextControlAgent _control_agent
 

Private Attributes

boost::uuids::uuid _uuid
 
runtime_module_type _module_t
 

Constructor & Destructor Documentation

◆ RuntimeContextChain()

Horizon::System::RuntimeContextChain::RuntimeContextChain ( runtime_module_type  run_module)
inline
474 : _module_t(run_module), _uuid(boost::uuids::random_generator()()), _queue_manager(_control_agent, this)
475 { }
runtime_module_type _module_t
Definition: System.hpp:596
ContextQueueManager _queue_manager
Definition: System.hpp:586
ContextControlAgent _control_agent
Definition: System.hpp:587
boost::uuids::uuid _uuid
Definition: System.hpp:595

Member Function Documentation

◆ get_control_agent()

ContextControlAgent & Horizon::System::RuntimeContextChain::get_control_agent ( )
inline
584{ return _control_agent; }

References _control_agent.

◆ get_module_type()

runtime_module_type Horizon::System::RuntimeContextChain::get_module_type ( )
inline
589{ return _module_t; }

References _module_t.

◆ get_queue_manager()

ContextQueueManager & Horizon::System::RuntimeContextChain::get_queue_manager ( )
inline
583{ return _queue_manager; }

References _queue_manager.

◆ get_uuid_string()

std::string Horizon::System::RuntimeContextChain::get_uuid_string ( )
inline
592{ return boost::uuids::to_string(_uuid); }

References _uuid.

◆ pop()

std::shared_ptr< RuntimeContext > Horizon::System::RuntimeContextChain::pop ( )
inline
579{ return _queue_manager.pop(); }
virtual std::shared_ptr< RuntimeContext > pop()
Definition: System.hpp:559

References _queue_manager, and Horizon::System::RuntimeContextChain::ContextQueueManager::pop().

+ Here is the call graph for this function:

◆ process()

bool Horizon::System::RuntimeContextChain::process ( )
inline
581{ return _queue_manager.process(); }
virtual bool process()
Definition: System.cpp:50

References _queue_manager, and Horizon::System::RuntimeContextChain::ContextQueueManager::process().

+ Here is the call graph for this function:

◆ push()

void Horizon::System::RuntimeContextChain::push ( std::shared_ptr< RuntimeContext context)
inline
580{ _queue_manager.push(context); }
virtual void push(std::shared_ptr< RuntimeContext > seg)
Definition: System.hpp:558

References _queue_manager, and Horizon::System::RuntimeContextChain::ContextQueueManager::push().

+ Here is the call graph for this function:

◆ set_module_type()

void Horizon::System::RuntimeContextChain::set_module_type ( runtime_module_type  module_t)
inline
590{ _module_t = module_t; }

References _module_t.

Member Data Documentation

◆ _control_agent

ContextControlAgent Horizon::System::RuntimeContextChain::_control_agent

Referenced by get_control_agent().

◆ _module_t

runtime_module_type Horizon::System::RuntimeContextChain::_module_t
private

Referenced by get_module_type(), and set_module_type().

◆ _queue_manager

ContextQueueManager Horizon::System::RuntimeContextChain::_queue_manager

Referenced by get_queue_manager(), pop(), process(), and push().

◆ _uuid

boost::uuids::uuid Horizon::System::RuntimeContextChain::_uuid
private

Referenced by get_uuid_string().


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