76 lines
2.4 KiB
C
Raw Normal View History

2024-03-26 10:33:00 +08:00
//------------------------------------------------------------------------
/**
\file IFloatFeature.h
\brief Definition of the IFloatFeature interface
\Date 2016-8-09
\Version 1.1.1608.9091
*/
//------------------------------------------------------------------------
#pragma once
#include "GXStringCPP.h"
#include "GXIAPIBase.h"
#include "GXSmartPtr.h"
class GXIAPICPP_API IFloatFeature
{
public:
//---------------------------------------------------------
/**
\brief Destructor
*/
//---------------------------------------------------------
virtual ~IFloatFeature(){};
//----------------------------------------------------------------------------------
/**
\brief Get minimum value allowed
*/
//----------------------------------------------------------------------------------
virtual double GetMin() = 0;
//----------------------------------------------------------------------------------
/**
\brief Get maximum value allowed
*/
//----------------------------------------------------------------------------------
virtual double GetMax() = 0;
//----------------------------------------------------------------------------------
/**
\brief True if the float has a constant increment
*/
//----------------------------------------------------------------------------------
virtual bool HasInc() = 0;
//----------------------------------------------------------------------------------
/**
\brief Get the constant increment if there is any
*/
//----------------------------------------------------------------------------------
virtual double GetInc() = 0;
//----------------------------------------------------------------------------------
/**
\brief Get the physical unit name
*/
//----------------------------------------------------------------------------------
virtual GxIAPICPP::gxstring GetUnit() = 0;
//----------------------------------------------------------------------------------
/**
\brief Get feature value
*/
//----------------------------------------------------------------------------------
virtual double GetValue() = 0;
//----------------------------------------------------------------------------------
/**
\brief Set feature value
\return void
*/
//----------------------------------------------------------------------------------
virtual void SetValue(double dValue) = 0;
};
template class GXIAPICPP_API GXSmartPtr<IFloatFeature>;
typedef GXSmartPtr<IFloatFeature> CFloatFeaturePointer;