📄 scaler.h
字号:
#ifndef ___SCALER_H
#define ___SCALER_H
#include <dsylib.h>
#include <node.h>
#include <roi.h>
#include <lvpackon.h>
LVDSYCLASS LvScalerNode : public Lv1In1OutNode {
private:
protected:
public:
virtual U32BIT GetType(void) { return ND_Scaler; }
virtual char FAR *GetName(void) { return "Scaler"; }
virtual LVSTATUS ExecuteMCommand(U16BIT CmdId, U16BIT wParam, LVRAWPTR lParam, LVSTATUS *RetVal, LvPort *FromPort, U8BIT Direction);
virtual LVSTATUS SetScale(LvROI *Info, U16BIT Width, U16BIT Height)=0;
LvScalerNode(HDEVICE aDevice, U8BIT aModule, U16BIT anId=0, LPSTR ExtName=NULL, LvNode *aParentNode=NULL);
~LvScalerNode(void);
};
LVDSYCLASS LvScaler_9406_1 : public LvScalerNode {
private:
protected:
U8BIT *HScaleTable;
U8BIT *VScaleTable;
virtual U8BIT *CreateVScaleTable(void) { return NULL; }
virtual U8BIT *CreateHScaleTable(void) { return NULL; }
virtual LVSTATUS SetHScaleMask(U32BIT *HValue, U8BIT NrItem, U8BIT PackSize, U16BIT Total, U16BIT Width) { return I_NoError; }
virtual LVSTATUS SetVScaleMask(U32BIT *HValue, U8BIT NrItem, U8BIT PackSize, U16BIT Total, U16BIT Height) { return I_NoError; }
public:
virtual LVSTATUS SetScale(LvROI *Info, U16BIT Width, U16BIT Height);
LvScaler_9406_1(HDEVICE aDevice, U8BIT Module, U16BIT anId=0, LPSTR ExtName=NULL, LvNode *aParentNode=NULL);
~LvScaler_9406_1(void);
};
LVDSYCLASS LvScaler_9406_2 : public LvScaler_9406_1 {
private:
protected:
virtual U8BIT *CreateVScaleTable(void);
virtual U8BIT *CreateHScaleTable(void);
virtual LVSTATUS SetHScaleMask(U32BIT *HValue, U8BIT NrItem, U8BIT PackSize, U16BIT Total, U16BIT Width);
virtual LVSTATUS SetVScaleMask(U32BIT *HValue, U8BIT NrItem, U8BIT PackSize, U16BIT Total, U16BIT Height);
public:
virtual LVSTATUS SetScale(LvROI *Info, U16BIT Width, U16BIT Height);
virtual LVSTATUS SetScaleMask(LvROI *Info, U16BIT Width, U16BIT Height);
LvScaler_9406_2(HDEVICE aDevice, U8BIT Module, U16BIT anId=0, LPSTR ExtName=NULL, LvNode *aParentNode=NULL);
~LvScaler_9406_2(void);
};
LVDSYCLASS LvPPXHpfScalerNode : public LvScalerNode {
private:
protected:
U16BIT Mirrored;
public:
LvPPXHpfScalerNode(HDEVICE aDevice, U8BIT Module, U16BIT anId=0, LPSTR ExtName=NULL, LvNode *aParentNode=NULL);
~LvPPXHpfScalerNode(void);
virtual LVSTATUS SetScale(LvROI *Info, U16BIT Width, U16BIT Height);
virtual LVSTATUS ExecuteMCommand(U16BIT CmdId, U16BIT wParam, LVRAWPTR lParam, LVSTATUS *RetVal, LvPort *FromPort, U8BIT Direction);
};
LVDSYCLASS LvPPCHpfScalerNode : public LvPPXHpfScalerNode {
private:
protected:
public:
LvPPCHpfScalerNode(HDEVICE aDevice, U8BIT Module, U16BIT anId=0, LPSTR ExtName=NULL, LvNode *aParentNode=NULL);
~LvPPCHpfScalerNode(void);
virtual LVSTATUS SetScale(LvROI *Info, U16BIT Width, U16BIT Height);
};
LVDSYCLASS LvPPXBrScalerNode : public LvScalerNode {
private:
protected:
public:
LvPPXBrScalerNode(HDEVICE aDevice, U8BIT Module, U16BIT anId=0, LPSTR ExtName=NULL, LvNode *aParentNode=NULL);
~LvPPXBrScalerNode(void);
virtual LVSTATUS SetScale(LvROI *Info, U16BIT Width, U16BIT Height);
virtual LVSTATUS ExecuteMCommand(U16BIT CmdId, U16BIT wParam, LVRAWPTR lParam, LVSTATUS *RetVal, LvPort *FromPort, U8BIT Direction);
};
LVDSYCLASS Lv8000ScalerNode : public LvScalerNode {
private:
protected:
public:
Lv8000ScalerNode(HDEVICE aDevice, U8BIT Module, U16BIT anId=0, LPSTR ExtName=NULL, LvNode *aParentNode=NULL);
~Lv8000ScalerNode(void);
virtual LVSTATUS SetScale(LvROI *Info, U16BIT Width, U16BIT Height);
virtual LVSTATUS ExecuteMCommand(U16BIT CmdId, U16BIT wParam, LVRAWPTR lParam, LVSTATUS *RetVal, LvPort *FromPort, U8BIT Direction);
virtual LVSTATUS TouchHardware(LvDFlowPortCfg *Cfg);
};
LVDSYCLASS LvTW6800ScalerNode : public LvScalerNode {
private:
protected:
public:
LvTW6800ScalerNode(HDEVICE aDevice, U8BIT Module, U16BIT anId=0, LPSTR ExtName=NULL, LvNode *aParentNode=NULL);
~LvTW6800ScalerNode(void);
virtual LVSTATUS SetScale(LvROI *Info, U16BIT Width, U16BIT Height);
virtual LVSTATUS ExecuteMCommand(U16BIT CmdId, U16BIT wParam, LVRAWPTR lParam, LVSTATUS *RetVal, LvPort *FromPort, U8BIT Direction);
virtual LVSTATUS TouchHardware(LvDFlowPortCfg *Cfg);
};
#include <lvpackof.h>
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -