⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 node.h

📁 相机传输图像程序源代码 拜耳模式(RAW格式文件)与RGB图像数据互相转换函数库
💻 H
📖 第 1 页 / 共 2 页
字号:
        virtual LVSTATUS AccessConfigChanged(LvPort *FromPort) { return I_NoError; }


        LvStore *Store;
        U32BIT StoreOption;

        virtual void   SaveStoreData(LvPort *FromPort, int Direction);
        virtual void   RestoreStoreData(LvPort *FromPort, int Direction);
        virtual void   DeleteStoreData(LvPort *FromPort, int Direction);

        virtual void   GetStoreParameter(LvPort *FromPort, int Direction, U16BIT *SizeOfItem,
                                         BOOL *ShouldPack, U16BIT *SizeOfKey, U16BIT *aKeyOffset);
        virtual void   GetStoreFreeKey(LvPort *FromPort, int Direction, void **FreeKey);

                void   IntSaveStoreData(LvPort *FromPort, int Direction);
                void   SetStoreOption(U16BIT When, U16BIT What);
                U16BIT GetStoreOption(U16BIT When);
                void   HandleStore(LvPort *FromPort, int Direction, U16BIT When);

                void   SetScaleMode(U8BIT ScaleMode);

        virtual void   SetCameraOption(U16BIT NrOption, U32BIT *CameraOption);
        virtual LVSTATUS TouchOption(void) { return I_NoError; }
        virtual void   MsgAdviseTarget(U16BIT Id, LvTargetNode *TargetNode, LvPort *FromPort, U8BIT Direction) {}
        virtual LVSTATUS CanActivate(LvPort *FromPort, int Direction) { return I_NoError; }

        U8BIT TargetColorFormat;

    public:

                LvROIInfo *GetOutputInfo(void) { return OutputInfo; }

        LvBoardIdentifier BoardId;
        U16BIT SwFlag;
        DWORD LcaFlag[LF_Max];

        virtual LVSTATUS Do(U16BIT Fn, ...);

                HDEVICE GethDevice(void);

                BOOL UsesRegisteredFunction(void);
                U16BIT RegistersFunction(void);

                U16BIT GetNrOutPort(void);
                U16BIT GetNrInPort(void);
                U16BIT GetNrSubNode(void);

                LvNode *GetParentNode(void);
                U8BIT GetModuleId(void);

                LvPort *GetOutputPort(U16BIT Index);
                LvPort *GetInputPort(U16BIT Index);

        virtual LVSTATUS Setup(void);
        virtual U32BIT GetType(void)=0;
        virtual char FAR *GetName(void)=0;
                char FAR *GetExtName(void);

                U16BIT GetId(void);
                U16BIT SetId(U16BIT NewId);

                void   InsertSubNode(LvNode *Node);
                void   CheckConnection(void);

        virtual LVSTATUS CreateStaticSubNodes(void);
        virtual LVSTATUS ConnectStaticSubNodes(void);
        virtual LVSTATUS CreateConnection(void);
        virtual LVSTATUS ConnectSubNode(LvNode *Node);
        virtual LvPort *AddInputPort(U16BIT PortType, U16BIT anId, LvPort *OtherPort=NULL, LvPort *NextPort=NULL);
        virtual LvPort *AddOutputPort(U16BIT PortType, U16BIT anId, LvPort *OtherPort=NULL, LvPort *NextPort=NULL);
        virtual LVSTATUS Connect(LvNode *NodeTo, U16BIT PortType, U16BIT anId=0xffff);
        virtual LVSTATUS Activate(U16BIT wParam=Tgt_Default);
        virtual LVSTATUS Deactivate(U16BIT wParam=Tgt_Default);
        virtual BOOL IsActive(void);
        virtual BOOL IsCameraConnected(void);
                LvPort *FindInputPort(U16BIT anId, U16BIT PortType, U16BIT *Index=NULL);
                LvPort *FindOutputPort(U16BIT anId, U16BIT PortType, U16BIT *Index=NULL);
                LvPort *GetPortFromType(U8BIT Direction, U16BIT Type, BOOL FreeOnly=TRUE, U16BIT *Index=NULL);
                LvNode *FindSubNode(U16BIT anId, U16BIT *Index=NULL);
                LvNode *GetSubNode(U16BIT Index);
                U16BIT  CountFreePort(U8BIT Direction, U16BIT PortType);
                U8BIT  GetScaleMode(void);
                LvNode *FindTopParentNode(void);

                BOOL IsAtomic(void);

        virtual BOOL IsTarget(void) { return Target; }
        virtual LVSTATUS SetInternalConnection(LvNode *Node);

        // Message functions
        virtual LVSTATUS GotMessage(U16BIT MsgType, LvPort *FromPort, U16BIT wParam, LVRAWPTR lParam);
        virtual LVSTATUS MsgConnect(LvPort *FromPort, U8BIT Direction);
        virtual LVSTATUS MsgActivateConnection(LvPort *FromPort, U8BIT Direction, U16BIT wParam, LVRAWPTR lParam);
        virtual LVSTATUS MsgDeactivateConnection(LvPort *FromPort, U8BIT Direction, U16BIT wParam, LVRAWPTR lParam);
        virtual LVSTATUS MsgDestroyConnection(LvPort *FromPort, U8BIT Direction);
        virtual LVSTATUS MsgConfigChanged(LvPort *FromPort, U8BIT Direction);
        virtual LVSTATUS MsgCommand(LvPort *FromPort, U8BIT Direction, U16BIT CmdId, U16BIT wParam, LVRAWPTR lParam, LVSTATUS *RetVal);
        // ..... Provide functions for each msg!!!!

        // Constructors & destructor
                LvNode(HDEVICE aDevice, U8BIT Module, U16BIT anId=0, LPSTR ExtName=NULL, LvNode *aParentNode=NULL);
        virtual ~LvNode(void);
//>>>>PS
//>>>>PE
    };




LVDSYCLASS LvTargetNode : public LvNode {
    private:

    protected:
        char *TargetDesc;

    public:
        virtual void Advise(void);
        virtual LVSTATUS Setup(void);

                LVSTATUS GetTargetDescription(LPSTR Descr, int DescrSize);

                LvTargetNode(HDEVICE aDevice, U8BIT Module, U16BIT anId=0, LPSTR ExtName=NULL,
                             LvNode *aParentNode=NULL, LPSTR aTargetDesc=NULL);
                ~LvTargetNode(void);
    };


LVDSYCLASS LvInfoNode : public LvTargetNode {

    private:

    protected:

    public:

        virtual U32BIT GetType(void) { return ND_Info; }
        virtual char FAR *GetName(void) { return "Info"; }

                LvInfoNode(HDEVICE aDevice, U8BIT Module, U16BIT anId=0, LPSTR ExtName=NULL,
                           LvNode *aParentNode=NULL, LPSTR aTargetDesc=NULL);
                ~LvInfoNode(void);
    };

LVDSYCLASS LvCfgConvNode : public LvTargetNode {

    private:

    protected:

        U16BIT ThePortType;
        LvPort *InPort;
        // LvPort *PortIn;
        LvPort *PortOutAccess;
        LvPort *PortOutFlow;

        virtual void ConvertCfg(LvDFlowPortCfg *From, LvAccessPortCfg *To);

    public:

        virtual LVSTATUS CreateConnection(void);
        virtual LVSTATUS MsgConfigChanged(LvPort *FromPort, U8BIT Direction);
        virtual LVSTATUS MsgActivateConnection(LvPort *FromPort, U8BIT Direction, U16BIT wParam, LVRAWPTR lParam);
        virtual LVSTATUS MsgDeactivateConnection(LvPort *FromPort, U8BIT Direction, U16BIT wParam, LVRAWPTR lParam);

        virtual void CfgConvert(U16BIT FromType, LvPortCfg *From, U16BIT ToType, LvPortCfg *To);

        virtual U32BIT GetType(void) { return ND_CfgConv; }
        virtual char FAR *GetName(void) { return "CfgConv"; }

                LvCfgConvNode(HDEVICE aDevice, U8BIT Module, U16BIT aPortType, U16BIT anId=0, LPSTR ExtName=NULL,
                              LvNode *aParentNode=NULL, LPSTR aTargetDesc=NULL);
                ~LvCfgConvNode(void);

    };

LVDSYCLASS Lv1In1OutNode : public LvNode {

    private:

    protected:

        LvPort *InPort;
        LvPort *OutPort;

        U16BIT InType;
        U16BIT OutType;

    public:

        virtual U32BIT GetType(void) { return ND_1In1Out; }
        virtual char FAR *GetName(void) { return "1:1"; }

        virtual LVSTATUS CalculateConfigContent(LvPortCfg *Cfg, U8BIT Direction) { return I_NoError; }
        virtual LVSTATUS MsgConfigChanged(LvPort *FromPort, U8BIT Direction);
        virtual LVSTATUS CreateConnection(void);
        virtual LvPort *AddInputPort(U16BIT PortType, U16BIT anId, LvPort *OtherPort=NULL, LvPort *NextPort=NULL) { return NULL; } // DSY_E_NoMorePort
        virtual LvPort *AddOutputPort(U16BIT PortType, U16BIT anId, LvPort *OtherPort=NULL, LvPort *NextPort=NULL) { return NULL; } // DSY_E_NoMorePort

                Lv1In1OutNode(HDEVICE aDevice, U8BIT Module, U16BIT InPortType, U16BIT OutPortType, U16BIT anId=0, LPSTR ExtName=NULL, LvNode *aParentNode=NULL);
                ~Lv1In1OutNode(void);

    };


//-[CLASS] LvNode

#include <lvpackof.h>

#endif

//-[HEADER] Node


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -