:orphan:

.. index:: pair: group; tool functions TAPI
.. _doxid-group__tapi__stress:

tool functions TAPI
===================

.. toctree::
	:hidden:

	struct_tapi_stress_opt.rst

Overview
~~~~~~~~

TAPI to handle stress tool. :ref:`More...<details-group__tapi__stress>`


.. ref-code-block:: cpp
	:class: doxyrest-overview-code-block

	
	// typedefs

	typedef struct :ref:`tapi_stress_opt<doxid-structtapi__stress__opt>` :ref:`tapi_stress_opt<doxid-group__tapi__stress_1gafb9ddfc8d898708ca5b3d07046341070>`;

	// structs

	struct :ref:`tapi_stress_opt<doxid-structtapi__stress__opt>`;

	// global variables

	static const :ref:`tapi_stress_opt<doxid-structtapi__stress__opt>` :ref:`tapi_stress_default_opt<doxid-group__tapi__stress_1ga51e6e118791636db9b56a744d97470ee>` = {     .cpu = :ref:`TAPI_JOB_OPT_OMIT_UINT<doxid-group__tapi__job__opt__bind__constructors_1ga14a3bbcba7a68d22493a6398ab411653>`,     .io = :ref:`TAPI_JOB_OPT_OMIT_UINT<doxid-group__tapi__job__opt__bind__constructors_1ga14a3bbcba7a68d22493a6398ab411653>`,     .vm = :ref:`TAPI_JOB_OPT_OMIT_UINT<doxid-group__tapi__job__opt__bind__constructors_1ga14a3bbcba7a68d22493a6398ab411653>`,     .timeout_s = :ref:`TAPI_JOB_OPT_OMIT_UINT<doxid-group__tapi__job__opt__bind__constructors_1ga14a3bbcba7a68d22493a6398ab411653>`, };

	// global functions

	:ref:`te_errno<doxid-te__errno_8h_1ac9fc14f28b70f4785037c1df70ebc2a5>` :ref:`tapi_stress_create<doxid-group__tapi__stress_1ga072d7e235805c7af2add24b3129216ac>`(:ref:`tapi_job_factory_t<doxid-group__tapi__job_1ga3379bed0890a0ea0073e2a55f85895cd>`* factory, const :ref:`tapi_stress_opt<doxid-structtapi__stress__opt>`* opt, struct tapi_stress_app** app);
	:ref:`te_errno<doxid-te__errno_8h_1ac9fc14f28b70f4785037c1df70ebc2a5>` :ref:`tapi_stress_start<doxid-group__tapi__stress_1ga52652b1fd65f8e6b24ca31be80c785c8>`(struct tapi_stress_app* app);
	:ref:`te_errno<doxid-te__errno_8h_1ac9fc14f28b70f4785037c1df70ebc2a5>` :ref:`tapi_stress_stop<doxid-group__tapi__stress_1ga91a246cc1c367044ba2ab400de21bbe0>`(struct tapi_stress_app* app, int timeout_ms);
	void :ref:`tapi_stress_destroy<doxid-group__tapi__stress_1gaea1572567eed3f67a0eecd4f86b330a0>`(struct tapi_stress_app* app);

	// macros

	#define :target:`TAPI_STRESS_DEFAULT_TERM_TIMEOUT_MS<doxid-group__tapi__stress_1gaae9918899c4130f811d4dfc5031e3d91>`

.. _details-group__tapi__stress:

Detailed Documentation
~~~~~~~~~~~~~~~~~~~~~~

TAPI to handle stress tool.

Copyright (C) 2020-2022 OKTET Labs Ltd. All rights reserved.

Typedefs
--------

.. index:: pair: typedef; tapi_stress_opt
.. _doxid-group__tapi__stress_1gafb9ddfc8d898708ca5b3d07046341070:

.. ref-code-block:: cpp
	:class: doxyrest-title-code-block

	typedef struct :ref:`tapi_stress_opt<doxid-structtapi__stress__opt>` tapi_stress_opt

stress tool specific command line options. At least one of the stress targets (CPU, IO, VM) should be specified (by setting a value other than :ref:`TAPI_JOB_OPT_OMIT_UINT <doxid-group__tapi__job__opt__bind__constructors_1ga14a3bbcba7a68d22493a6398ab411653>`).

Global Variables
----------------

.. index:: pair: variable; tapi_stress_default_opt
.. _doxid-group__tapi__stress_1ga51e6e118791636db9b56a744d97470ee:

.. ref-code-block:: cpp
	:class: doxyrest-title-code-block

	static const :ref:`tapi_stress_opt<doxid-structtapi__stress__opt>` tapi_stress_default_opt = {     .cpu = :ref:`TAPI_JOB_OPT_OMIT_UINT<doxid-group__tapi__job__opt__bind__constructors_1ga14a3bbcba7a68d22493a6398ab411653>`,     .io = :ref:`TAPI_JOB_OPT_OMIT_UINT<doxid-group__tapi__job__opt__bind__constructors_1ga14a3bbcba7a68d22493a6398ab411653>`,     .vm = :ref:`TAPI_JOB_OPT_OMIT_UINT<doxid-group__tapi__job__opt__bind__constructors_1ga14a3bbcba7a68d22493a6398ab411653>`,     .timeout_s = :ref:`TAPI_JOB_OPT_OMIT_UINT<doxid-group__tapi__job__opt__bind__constructors_1ga14a3bbcba7a68d22493a6398ab411653>`, }

Default options initializer

Global Functions
----------------

.. index:: pair: function; tapi_stress_create
.. _doxid-group__tapi__stress_1ga072d7e235805c7af2add24b3129216ac:

.. ref-code-block:: cpp
	:class: doxyrest-title-code-block

	:ref:`te_errno<doxid-te__errno_8h_1ac9fc14f28b70f4785037c1df70ebc2a5>` tapi_stress_create(:ref:`tapi_job_factory_t<doxid-group__tapi__job_1ga3379bed0890a0ea0073e2a55f85895cd>`* factory, const :ref:`tapi_stress_opt<doxid-structtapi__stress__opt>`* opt, struct tapi_stress_app** app)

Create stress app. All needed information to run stress is in ``opt``



.. rubric:: Parameters:

.. list-table::
	:widths: 20 80

	*
		- factory

		- Job factory.

	*
		- opt

		- Options of stress tool.

	*
		- app

		- stress app handle.



.. rubric:: Returns:

Status code.

.. index:: pair: function; tapi_stress_start
.. _doxid-group__tapi__stress_1ga52652b1fd65f8e6b24ca31be80c785c8:

.. ref-code-block:: cpp
	:class: doxyrest-title-code-block

	:ref:`te_errno<doxid-te__errno_8h_1ac9fc14f28b70f4785037c1df70ebc2a5>` tapi_stress_start(struct tapi_stress_app* app)

Start stress app.



.. rubric:: Parameters:

.. list-table::
	:widths: 20 80

	*
		- app

		- stress app handle.



.. rubric:: Returns:

Status code.

.. index:: pair: function; tapi_stress_stop
.. _doxid-group__tapi__stress_1ga91a246cc1c367044ba2ab400de21bbe0:

.. ref-code-block:: cpp
	:class: doxyrest-title-code-block

	:ref:`te_errno<doxid-te__errno_8h_1ac9fc14f28b70f4785037c1df70ebc2a5>` tapi_stress_stop(struct tapi_stress_app* app, int timeout_ms)

Stop stress app.



.. rubric:: Parameters:

.. list-table::
	:widths: 20 80

	*
		- app

		- stress app handle.

	*
		- timeout_ms

		- Wait timeout in milliseconds.



.. rubric:: Returns:

Status code.

.. index:: pair: function; tapi_stress_destroy
.. _doxid-group__tapi__stress_1gaea1572567eed3f67a0eecd4f86b330a0:

.. ref-code-block:: cpp
	:class: doxyrest-title-code-block

	void tapi_stress_destroy(struct tapi_stress_app* app)

Destroy stress app.



.. rubric:: Parameters:

.. list-table::
	:widths: 20 80

	*
		- app

		- stress app handle.