This class handles the process intropection for RouDi. It is recommended to use the ProcessIntrospectionType alias which sets the intended template parameter. The class tracks the adding and removal of processes and sends it to the introspection client if subscribed.
More...
#include <process_introspection.hpp>
|
| ProcessIntrospection (ProcessIntrospection const &)=delete |
|
ProcessIntrospection & | operator= (ProcessIntrospection const &)=delete |
|
| ProcessIntrospection (ProcessIntrospection &&)=delete |
|
ProcessIntrospection & | operator= (ProcessIntrospection &&)=delete |
|
void | addProcess (const int pid, const RuntimeName_t &name) noexcept |
| This function is used to add a process to the process introspection. More...
|
|
void | removeProcess (const int pid) noexcept |
| This function is used to remove the process from the process introspection. More...
|
|
void | addNode (const RuntimeName_t &runtimeName, const NodeName_t &node) noexcept |
| This function is used to add a node to the process introspection. More...
|
|
void | removeNode (const RuntimeName_t &runtimeName, const NodeName_t &node) noexcept |
| This function is used to remove a node from the process introspection. More...
|
|
void | registerPublisherPort (PublisherPort &&publisherPort) noexcept |
| This functions registers the POSH publisher port which is used to send the data to the instrospcetion client. More...
|
|
void | run () noexcept |
| This function starts a thread which periodically sends the introspection data to the client. The send interval can be set by setSendInterval(...). Before this function is called, the publisher port hast to be registered with registerPublisherPort().
|
|
void | stop () noexcept |
| This function stops the thread previously started by run().
|
|
void | setSendInterval (const units::Duration interval) noexcept |
| This function configures the interval for the transmission of the port introspection data. More...
|
|
|
cxx::optional< PublisherPort > | m_publisherPort |
|
template<typename PublisherPort>
class iox::roudi::ProcessIntrospection< PublisherPort >
This class handles the process intropection for RouDi. It is recommended to use the ProcessIntrospectionType alias which sets the intended template parameter. The class tracks the adding and removal of processes and sends it to the introspection client if subscribed.
◆ addNode()
template<typename PublisherPort >
This function is used to add a node to the process introspection.
- Parameters
-
[in] | runtimeName | is the name of the proces |
[in] | nodeName | is the name of the node to add |
◆ addProcess()
template<typename PublisherPort >
This function is used to add a process to the process introspection.
- Parameters
-
[in] | pid | is the PID of the process to add |
[in] | name | is the name of the process |
◆ registerPublisherPort()
template<typename PublisherPort >
This functions registers the POSH publisher port which is used to send the data to the instrospcetion client.
- Parameters
-
publisherPort | is the publisher port for transmission |
◆ removeNode()
template<typename PublisherPort >
This function is used to remove a node from the process introspection.
- Parameters
-
[in] | runtimeName | is the name of the proces |
[in] | nodeName | is the name of the node to remove |
◆ removeProcess()
template<typename PublisherPort >
This function is used to remove the process from the process introspection.
- Parameters
-
[in] | pid | is the PID of the process to remove |
◆ setSendInterval()
template<typename PublisherPort >
This function configures the interval for the transmission of the port introspection data.
- Parameters
-
[in] | interval | duration between two send invocations. |
The documentation for this class was generated from the following files:
- iceoryx_posh/internal/roudi/introspection/process_introspection.hpp
- iceoryx_posh/internal/roudi/introspection/process_introspection.inl