#ifndef OpenTestSystem_OtxDiagManager_OtxDiagApi_OtxDataTypes_IOtxRequest_H
#define OpenTestSystem_OtxDiagManager_OtxDiagApi_OtxDataTypes_IOtxRequest_H

#include "ApiDefs.h"
#include "OtxDataTypes/IOtxMessage.h"
#include <TypeDefs.h>
#include <string>

namespace OpenTestSystem { namespace OtxDiagManager { namespace OtxDiagApi { namespace OtxDataTypes {
	/// <summary>
	/// @snippetdoc DocSnippets.txt OtxDiagApiDatatypeComment
	/// </summary>
	class API_EXPORTS IOtxRequest : public IOtxMessage
	{
	protected:
		inline IOtxRequest() {}
	public:
		inline virtual ~IOtxRequest() {}

		/// <summary>
		/// @snippetdoc DocSnippets.txt OtxDiagApiDatatypeComfortMethodComment
		/// </summary>
		virtual std::string GetShortName() const = 0;
		/// <summary>
		/// @snippetdoc DocSnippets.txt OtxDiagApiDatatypeComfortMethodComment
		/// </summary>
		virtual std::string GetLongName() const = 0;
	};
}}}}
#endif // OpenTestSystem_OtxDiagManager_OtxDiagApi_OtxDataTypes_IOtxRequest_H