2024-03-26 10:33:00 +08:00

59 lines
1.9 KiB
C++

//------------------------------------------------------------------------
/**
\file IIntFeature.h
\brief Definition of the IIntFeature interface
\Date 2016-8-09
\Version 1.1.1608.9091
*/
//------------------------------------------------------------------------
#pragma once
#include "GXIAPIBase.h"
#include "GXSmartPtr.h"
class GXIAPICPP_API IIntFeature
{
public:
//---------------------------------------------------------
/**
\brief Destructor
*/
//---------------------------------------------------------
virtual ~IIntFeature(){};
//----------------------------------------------------------------------------------
/**
\brief Get the minimum value allowed
*/
//----------------------------------------------------------------------------------
virtual int64_t GetMin() = 0;
//----------------------------------------------------------------------------------
/**
\brief Get the maximum value allowed
*/
//----------------------------------------------------------------------------------
virtual int64_t GetMax() = 0;
//----------------------------------------------------------------------------------
/**
\brief Get the constant increment if there is any
*/
//----------------------------------------------------------------------------------
virtual int64_t GetInc() = 0;
//----------------------------------------------------------------------------------
/**
\brief Get a feature value
*/
//----------------------------------------------------------------------------------
virtual int64_t GetValue() = 0;
//----------------------------------------------------------------------------------
/**
\brief Set a feature value
*/
//----------------------------------------------------------------------------------
virtual void SetValue(int64_t nValue) = 0;
};
template class GXIAPICPP_API GXSmartPtr<IIntFeature>;
typedef GXSmartPtr<IIntFeature> CIntFeaturePointer;