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

📄 cnnctr2.h

📁 相机传输图像程序源代码 拜耳模式(RAW格式文件)与RGB图像数据互相转换函数库
💻 H
📖 第 1 页 / 共 2 页
字号:
//=====================================================================
//[HEADER/OEM] Cnnctr
//+
//[DESCRIPTION]
//.
//[NOTE]
//.



#ifndef ___CNNCTR2_H
#define ___CNNCTR2_H


#include <dsylib.h>

#include <lvpackon.h>


enum _SignalStatus {
    SigS_NotAvailable,
    SigS_Free,
    SigS_Occupied,
    SigS_LastSignalStatus
    };

typedef struct _tagLvIntConnInfo {
    // BOOL   IsDigital;
    U32BIT Interface;
    U16BIT VTConn[VT_Last][4];
    } LvIntConnInfo;


typedef struct _tagLvInternalConnectionInfo {
    char Name[30];                     // Define!!!!!
    // U8BIT ModuleId;
    BOOL   IsInput;
    BOOL   IsDigital;
    U16BIT VTConn[VT_Last];
    } LvInternalConnectionInfo;


typedef struct _tagLvSignalInfo {
    U16BIT Status;
    U8BIT Counted;
    LvIntConnInfo ConnInfo;
    } LvSignalInfo;

typedef struct _tagLvConnMap {
    char   *Description;
    U8BIT   Index;
    U8BIT   Type;
    U8BIT   VideoType;
    U8BIT   ScanMode;
    U8BIT   SignalNr;
    U8BIT   SubGrbNr;
    U16BIT  SyncIn;
    U16BIT  SyncOut;
    } LvConnMap;

typedef struct _tagLvConnectorMap {
    char *Description;
    U8BIT Index;
    U8BIT Type;
    U8BIT VideoType;
    U8BIT SignalNr;
    // U8BIT SyncNr;
    U16BIT SyncIn;
    U16BIT SyncOut;
    } LvConnectorMap;


// = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =
//[CLASS/OEM] LvConnector
// Represent a connector for an external device
//+
//[DESCRIPTION]
// Each Camera can be connected to the grabber through an Input Connector; depending
//& on the type of connector used, it will be possible to connect to the grabber
//& a different number of camera types.
// Each available connector is represented by a Handle, that uniquely identifies
//& the connector in the system; the user application, when connecting input
//& devices should specify where the equipment will be physically connected
//& in order to allow Daisy to perform the correct settings.
//.


LVDSYCLASS LvConnector {
    private:
    protected:
        BOOL IsIO;
        U16BIT NrSignal;
        LvSignalInfo *TheSignal;
        LvConnMap *TheMap;
        LvConnMap *TheDigitalMap;
        U32BIT ConnParam[2];
        char ConnString[32];

        HCONNECTOR GetHConnector(U16BIT VideoType, U16BIT ConnId);
        virtual U16BIT GetConnId(HCONNECTOR hConn);
        U8BIT  GetSyncNr(HCONNECTOR hConn);
        U16BIT GetVideoType(HCONNECTOR hConn);
        virtual BOOL IsUsable(HCONNECTOR hConn);
        virtual BOOL IsConnected(HCONNECTOR hConn);
        virtual U16BIT GetFreeEx(U16BIT CameraType, LvConnectionInfo *ConnInfo=NULL, U32BIT SubGrb=0);
        U16BIT GetMapIndex(U16BIT ConnId);
        BOOL   GetDigital(U16BIT ConnId);
        U8BIT  GetScanMode(U16BIT ConnId);
        virtual void SetMap(LvConnMap *aMap, LvIntConnInfo *aConnInfo=NULL, LvConnMap *aDigitalMap=NULL);
    public:

        virtual int GetConnectorType(U16BIT ConnId);
        virtual LVSTATUS GetSignalNr(U16BIT Id, U8BIT *SigNr);
        virtual LVSTATUS GetDescription(U16BIT Id, LPSTR Buffer, int MaxSize);
        // U16BIT GetNrFree(U16BIT VideoType, BOOL ForDigital=FALSE);
                U16BIT GetNrFreeEx(U16BIT CameraType, U32BIT SubGrb);
        // LVSTATUS GetFreeInfo(U16BIT VideoType, LvConnectionInfo *ConnInfo, BOOL ForDigital=FALSE, BOOL ForInput=TRUE);
        virtual LVSTATUS GetFreeInfoEx(U16BIT CameraType, LvConnectionInfo *ConnInfo, U32BIT SubGrb);
        virtual LVSTATUS GetConnectorInfo(HCONNECTOR hConn, LvConnectionInfo *ConnInfo, LPSTR Extra, U8BIT SyncNr);

        virtual LVSTATUS FreeConnector(HCONNECTOR hConn);
        virtual LVSTATUS UseConnector(HCONNECTOR hConn);

        LvConnector(LvIntConnInfo *aConnInfo, LvConnMap *aMap, LvConnMap *aDigitalMap=NULL);
        virtual ~LvConnector();

    friend LVDSYCLASS LvGrabberNode;
    };

//-[CLASS] LvConnector

LVDSYCLASS Lv9403_1Connector : public LvConnector {
    private:
    protected:
        virtual void SetMap(LvConnMap *aMap, LvIntConnInfo *aConnInfo=NULL, LvConnMap *aDigitalMap=NULL);
    public:

                Lv9403_1Connector(LvConnMap *aMap, BOOL HasDigital=FALSE);
    };


LVDSYCLASS Lv9403_1_StandardConnector : public Lv9403_1Connector {
    private:
    protected:
    public:

                Lv9403_1_StandardConnector(BOOL HasDigital=FALSE);
    };


LVDSYCLASS Lv9403_1_PsConnector : public Lv9403_1Connector {
    private:
    protected:


    public:

                Lv9403_1_PsConnector(BOOL HasDigital=FALSE);
    };

LVDSYCLASS Lv9403_1_NoConnector : public Lv9403_1Connector {
    private:
    protected:
    public:

                Lv9403_1_NoConnector(BOOL HasDigital=FALSE);
    };

LVDSYCLASS Lv9403_1_MultiStandard : public Lv9403_1Connector {
    private:
    protected:
    public:

                Lv9403_1_MultiStandard(BOOL HasDigital=FALSE);
    };

LVDSYCLASS Lv9403_1_Int_0_Connector : public Lv9403_1Connector {
    private:
    protected:
    public:

                Lv9403_1_Int_0_Connector(BOOL HasDigital=FALSE);
    };

LVDSYCLASS Lv9403_1_User_Connector : public Lv9403_1Connector {
    private:
    protected:
        LvConnMap *UserMap;
        char *UserDesc;
    public:

                Lv9403_1_User_Connector(BOOL HasDigital=FALSE);
                ~Lv9403_1_User_Connector();
    };





LVDSYCLASS Lv9512Connector : public LvConnector {
    private:
    protected:
        virtual void SetMap(LvConnMap *aMap, LvIntConnInfo *aConnInfo=NULL, LvConnMap *aDigitalMap=NULL);
    public:

                Lv9512Connector(LvConnMap *aMap);
    };

LVDSYCLASS Lv9512NoConnector : public Lv9512Connector {
    private:
    protected:
    public:

                Lv9512NoConnector();
    };


LVDSYCLASS Lv9512_2_Connector : public LvConnector {
    private:
    protected:
        virtual void SetMap(LvConnMap *aMap, LvIntConnInfo *aConnInfo=NULL, LvConnMap *aDigitalMap=NULL);
    public:

                Lv9512_2_Connector(LvConnMap *aMap);
    };

LVDSYCLASS Lv9512_2_NoConnector : public Lv9512_2_Connector {
    private:
    protected:
    public:

                Lv9512_2_NoConnector();
    };



LVDSYCLASS Lv9512_4_Connector : public LvConnector {
    private:
    protected:
        virtual void SetMap(LvConnMap *aMap, LvIntConnInfo *aConnInfo=NULL, LvConnMap *aDigitalMap=NULL);
    public:

                Lv9512_4_Connector(LvConnMap *aMap);
    };

LVDSYCLASS Lv9512_4_NoConnector : public Lv9512_4_Connector {
    private:
    protected:
    public:

                Lv9512_4_NoConnector();
    };





// -------------------------------------------

LVDSYCLASS Lv9601_Connector : public LvConnector {
    protected:
        LvConnMap *LocalDigitalMap;
        LvConnMap *LocalMap;
        BOOL ShouldDelete;
        LvIntConnInfo *LocalConnInfo;
        virtual void SetMap(LvConnMap *aMap, LvIntConnInfo *aConnInfo=NULL, LvConnMap *aDigitalMap=NULL);
    public:
                Lv9601_Connector(LvIntConnInfo *aConnInfo, LvConnMap *aMap, int aConnId);
                ~Lv9601_Connector(void);
    };

LVDSYCLASS Lv9601_0_Connector : public Lv9601_Connector {
    public:
                Lv9601_0_Connector(U16BIT DL, int ConnId=ConnT_None);
    };
LVDSYCLASS Lv9601_1_Connector : public Lv9601_Connector {
    public:
                Lv9601_1_Connector(U16BIT DL, int ConnId=ConnT_None);
    };
LVDSYCLASS Lv9601_2_Connector : public Lv9601_Connector {
    public:
                Lv9601_2_Connector(U16BIT DL, int ConnId=ConnT_None);
    };
LVDSYCLASS Lv9601_3_Connector : public Lv9601_Connector {
    public:
                Lv9601_3_Connector(U16BIT DL, int ConnId=ConnT_None);
    };
LVDSYCLASS Lv9601_4_Connector : public Lv9601_Connector {
    public:
                Lv9601_4_Connector(U16BIT DL, int ConnId=ConnT_None);
    };
LVDSYCLASS Lv9601_5_Connector : public Lv9601_Connector {
    public:
                Lv9601_5_Connector(U16BIT DL, int ConnId=ConnT_None);
    };

LVDSYCLASS Lv9601_6_Connector : public Lv9601_Connector {
    public:
                Lv9601_6_Connector(U16BIT DL, int ConnId=ConnT_None);
    };



// -------------------------------------------

LVDSYCLASS Lv9903_Connector : public LvConnector {
    protected:
        LvConnMap *LocalMap;
        BOOL ShouldDelete;
        LvIntConnInfo *LocalConnInfo;
        virtual void SetMap(LvConnMap *aMap, LvIntConnInfo *aConnInfo=NULL, LvConnMap *aDigitalMap=NULL);
    public:
                Lv9903_Connector(LvIntConnInfo *aConnInfo, LvConnMap *aMap, int aConnId);
                ~Lv9903_Connector(void);
    };

LVDSYCLASS Lv9903_1_Connector : public Lv9903_Connector {
    public:
                Lv9903_1_Connector(U16BIT DL, int ConnId=ConnT_None);
    };
LVDSYCLASS Lv9903_3_Connector : public Lv9903_Connector {
    public:
                Lv9903_3_Connector(U16BIT DL, int ConnId=ConnT_None);
    };
LVDSYCLASS Lv9903_5_Connector : public Lv9903_Connector {
    public:
                Lv9903_5_Connector(U16BIT DL, int ConnId=ConnT_None);
    };









LVDSYCLASS Lv9903_X_H1_Connector : public Lv9903_Connector {
    public:
                Lv9903_X_H1_Connector(U16BIT DL, int ConnId);
    };

LVDSYCLASS Lv9903_4_H1_Connector : public Lv9903_Connector {
    public:
                Lv9903_4_H1_Connector(U16BIT DL, int ConnId);
    };

LVDSYCLASS Lv9903_1_H4_Connector : public Lv9903_Connector {
    public:
                Lv9903_1_H4_Connector(U16BIT DL, int ConnId);
    };

LVDSYCLASS Lv9903_3_H4_Connector : public Lv9903_Connector {
    public:
                Lv9903_3_H4_Connector(U16BIT DL, int ConnId);
    };

LVDSYCLASS Lv9903_4_H4_Connector : public Lv9903_Connector {
    public:
                Lv9903_4_H4_Connector(U16BIT DL, int ConnId);
    };

LVDSYCLASS Lv9903_5_H4_Connector : public Lv9903_Connector {
    public:
                Lv9903_5_H4_Connector(U16BIT DL, int ConnId);
    };

LVDSYCLASS Lv9903_1_H8_Connector : public Lv9903_Connector {
    public:
                Lv9903_1_H8_Connector(U16BIT DL, int ConnId);
    };

⌨️ 快捷键说明

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