.. index:: pair: class; ProcessLauncherBasic
.. _doxid-class_process_launcher_basic:

class ProcessLauncherBasic
==========================

.. toctree::
	:hidden:




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

	#include <process_launcher_basic.h>
	
	class ProcessLauncherBasic: public :ref:`ProcessLauncher<doxid-class_process_launcher>` {
	public:
	};

Inherited Members
-----------------

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

	public:
		// typedefs
	
		typedef std::shared_ptr<T> :ref:`shared_ptr<doxid-class_ptr_templates_1a71a8266f22feaa7154763ceb94e25457>`;
		typedef std::shared_ptr<const T> :ref:`const_shared_ptr<doxid-class_ptr_templates_1ac36bfa374f3b63c85ba97d8cf953ce3b>`;
		typedef std::unique_ptr<T> :ref:`unique_ptr<doxid-class_ptr_templates_1a6d24e150817ba36df80ce3b603b7c665>`;
		typedef std::unique_ptr<const T> :ref:`const_unique_ptr<doxid-class_ptr_templates_1aef0eb44f9c386dbf0de54d0f5afac667>`;
		typedef :ref:`LaunchCommandInterface::ENGINE_RUNNING_STATUS<doxid-class_launch_command_interface_1a8f892914289fc45824ba408070b03056>` :ref:`ENGINE_RUNNING_STATUS<doxid-class_process_launcher_interface_1ad958854e32d7a961c7bb07bd23e088b5>`;

		// fields
	
		static constexpr auto :ref:`UNKNOWN<doxid-class_process_launcher_interface_1a8ce968ad8b7e9a8fd23b20032133cd11>` = LaunchCommandInterface::ENGINE_RUNNING_STATUS::UNKNOWN;
		static constexpr auto :ref:`RUNNING<doxid-class_process_launcher_interface_1a29b24978e039d71a362509c857124e1a>` = LaunchCommandInterface::ENGINE_RUNNING_STATUS::RUNNING;
		static constexpr auto :ref:`STOPPED<doxid-class_process_launcher_interface_1a57eb1ac4597c3c830bf9c876447e819e>` = LaunchCommandInterface::ENGINE_RUNNING_STATUS::STOPPED;
		static constexpr auto :ref:`LauncherType<doxid-class_process_launcher_1a706fe2bfbcd16a9566bfeb37a0f7f1b2>` = LAUNCHER_TYPE;

		// methods
	
		virtual std::string :ref:`launcherName<doxid-class_process_launcher_interface_1a525cd3685e3eff9a4d1ef17bf4ba06ab>`() const = 0;
		virtual :ref:`ProcessLauncherInterface::unique_ptr<doxid-class_ptr_templates_1a6d24e150817ba36df80ce3b603b7c665>` :ref:`createLauncher<doxid-class_process_launcher_interface_1a87f91cf3ab18586e9836f3c9215df6fd>`(int logFD = -1) = 0;
	
		virtual pid_t :ref:`launchProcess<doxid-class_process_launcher_interface_1af7dddf137ef184baf929d0d96f23de06>`(
			:ref:`nlohmann::json<doxid-engine__json__server_8cpp_1ab701e3ac61a85b337ec5c1abaad6742d>` procConfig,
			bool appendParentEnv = true
		) = 0;
	
		virtual pid_t :ref:`stopProcess<doxid-class_process_launcher_interface_1aaa751375567c0aae9f7a94604e03f2cf>`(unsigned int killWait) = 0;
		virtual :ref:`ENGINE_RUNNING_STATUS<doxid-class_launch_command_interface_1a8f892914289fc45824ba408070b03056>` :ref:`getProcessStatus<doxid-class_process_launcher_interface_1afecd8b121e9b5df59a47584a93809b94>`();
		:ref:`LaunchCommandInterface<doxid-class_launch_command_interface>`* :ref:`launchCommand<doxid-class_process_launcher_interface_1adde0e1c47dd675a2bf4e0d64cd8fea8f>`() const;
		void :ref:`setFileDescriptor<doxid-class_process_launcher_interface_1a64934c530d30a87b389f93402a36f80e>`(int logFD);
		virtual :ref:`ProcessLauncherInterface::unique_ptr<doxid-class_ptr_templates_1a6d24e150817ba36df80ce3b603b7c665>` :ref:`createLauncher<doxid-class_process_launcher_1ace22fb54a34117a81225edd2e6699cb7>`(int logFD = -1);
		virtual std::string :ref:`launcherName<doxid-class_process_launcher_1aac9a1d7097eae647725e2ea9dedc72c9>`() const;
	
		virtual pid_t :ref:`launchProcess<doxid-class_process_launcher_1a22232da024235f21345ae329523298e7>`(
			:ref:`nlohmann::json<doxid-engine__json__server_8cpp_1ab701e3ac61a85b337ec5c1abaad6742d>` procConfig,
			bool appendParentEnv = true
		);
	
		virtual pid_t :ref:`stopProcess<doxid-class_process_launcher_1ab496d4e8a90cea048e03e6bcf5ba41d4>`(unsigned int killWait);