29#ifndef GENAPI_IIINTEGER_H
30#define GENAPI_IIINTEGER_H
38# pragma warning ( push )
39# pragma warning ( disable : 4251 )
42namespace GENAPI_NAMESPACE
52 GENICAM_INTERFACE GENAPI_DECL_ABSTRACT
IInteger :
virtual public IValue
59 virtual void SetValue(int64_t Value,
bool Verify =
true) = 0;
70 virtual int64_t
GetValue(
bool Verify =
false,
bool IgnoreCache =
false ) = 0;
79 virtual int64_t
GetMin() = 0;
82 virtual int64_t
GetMax() = 0;
88 virtual int64_t
GetInc() = 0;
111#ifndef DOXYGEN_IGNORE
113 GENICAM_INTERFACE IFloat;
120 template <
class T,
class I=T>
121 class CIntegerRefT :
public CValueRefT<T, I>
123 typedef CValueRefT<T, I> ref;
131 virtual void SetValue(int64_t Value,
bool Verify =
true)
135 ref::m_Ptr->SetValue(Value, Verify);
139 virtual IInteger& operator=(int64_t Value)
143 ref::m_Ptr->SetValue(Value);
148 virtual int64_t GetValue(
bool Verify =
false,
bool IgnoreCache =
false )
152 return ref::m_Ptr->GetValue( Verify, IgnoreCache );
156 virtual int64_t operator()()
160 return ref::m_Ptr->operator()();
164 virtual int64_t operator*()
168 return ref::m_Ptr->operator*();
172 virtual int64_t GetMin()
176 return ref::m_Ptr->GetMin();
180 virtual int64_t GetMax()
184 return ref::m_Ptr->GetMax();
192 return ref::m_Ptr->GetIncMode();
196 virtual int64_t GetInc()
200 return ref::m_Ptr->GetInc();
204 virtual int64_autovector_t GetListOfValidValues(
bool bounded =
true)
208 return ref::m_Ptr->GetListOfValidValues(bounded);
216 return ref::m_Ptr->GetRepresentation();
224 return ref::m_Ptr->GetUnit();
232 return dynamic_cast<IFloat*
>(ref::m_Ptr->GetNode()->GetCastAlias());
236 virtual void ImposeMin(int64_t Value)
240 ref::m_Ptr->ImposeMin(Value);
244 virtual void ImposeMax(int64_t Value)
248 ref::m_Ptr->ImposeMax(Value);
262# pragma warning ( pop )
GenICam common utilities.
declspec's to be used for GenApi Windows dll
virtual IBoolean & operator=(bool Value)
Set node value.
Definition IBoolean.h:62
virtual bool operator()() const
Get node value.
Definition IBoolean.h:77
virtual bool GetValue(bool Verify=false, bool IgnoreCache=false) const =0
Get node value.
virtual GENICAM_NAMESPACE::gcstring operator*()=0
Get string node value.
virtual EIncMode GetIncMode()=0
Get increment mode.
virtual ERepresentation GetRepresentation()=0
Get recommended representation.
virtual double_autovector_t GetListOfValidValues(bool bounded=true)=0
Get list of valid value.
virtual double GetMax()=0
Get maximum value allowed.
virtual void ImposeMin(double Value)=0
Restrict minimum value.
virtual double GetMin()=0
Get minimum value allowed.
virtual GENICAM_NAMESPACE::gcstring GetUnit() const =0
Get the physical unit name.
virtual void ImposeMax(double Value)=0
Restrict maximum value.
virtual double GetInc()=0
Get the constant increment if there is any.
Definition of the interface IValue.
Common types used in the public GenApi interface.
Vector of integers with reference counting.
Definition Autovector.h:53
A string class which is a clone of std::string.
Definition GCString.h:51
#define ACCESS_EXCEPTION
Fires a access exception, e.g. throw ACCESS_EXCEPTION("Not everybody")
Definition GCException.h:252
CIntegerRefT< IInteger > CIntegerRef
Definition IInteger.h:255
enum GENAPI_NAMESPACE::_EIncMode EIncMode
GENICAM_INTERFACE GENAPI_DECL_ABSTRACT IValue
Interface for value properties.
Definition IValue.h:59
GENICAM_INTERFACE GENAPI_DECL_ABSTRACT IFloat
Interface for float properties.
Definition IFloat.h:58
GENICAM_INTERFACE IInteger
Interface for integer properties.
Definition IFloat.h:118
enum GENAPI_NAMESPACE::_ERepresentation ERepresentation