SideLaser.h 2.4 KB
/**
 ********************************************************************
 * @file   SideLaser.h
 *         SideLaser.h 的头文件
 *
 *********************************************************************
 */

/* Define to prevent recursive inclusion 避免重定义 -------------------------------------*/
#ifndef SIDE_LASER_H
#define SIDE_LASER_H

/* Includes ------------------------------------------------------------------*/
#include "JZsdk_Base/JZsdk_Code/JZsdk_Code.h"

#ifdef __cplusplus
extern "C" {
#endif

/* Exported constants --------------------------------------------------------*/
/* 常亮定义*/

/*********
 * 
 *  激光模式结构体
 * 
 * **********/
typedef enum E_SideLaserMode
{
    SIDE_LASER_GREEN_AWALYS_ON = 0x00,       //绿色常亮
    SIDE_LASER_LEFT_AWALYS_ON = 0x00,       //左灯常亮
    SIDE_LASER_RED_AWALYS_ON = 0x01,          //红色常亮
    SIDE_LASER_RIGHT_AWALYS_ON = 0x01,       //右灯常亮
    SIDE_LASER_GREEN_AND_RED_AWALYS_ON = 0x02,    //红绿常亮
    SIDE_LASER_GREEN_ADD_RED_TOGETHER_FLICKER = 0x03,     //红绿齐闪
    SIDE_LASER_GREEN_ADD_RED_ALTERNATION_FLICKER = 0x04,   //红绿交替闪
}E_SideLaserMode;


/*********
 * 
 *  侧面激光参数
 * 
 * **********/
typedef enum SideLaserParam
{
    SIDELASER_REALMODE = 0x000000,
    SIDELASER_CONTROL = 0x000001,
    SIDELASER_MODE    = 0x000002,
}SideLaserParam;

/*********
* 
*   侧面激光属性
* 
* **********/
typedef struct T_JzSideLaserAttribute{
    int status;
    E_SideLaserMode mode;
    int Frequency;
    int Uimode;   //0 关闭 1~5就是 E_SideLaserMode
}T_JzSideLaserAttribute;

/*********
* 
*    侧面激光信息
* 
* **********/
typedef struct T_JzSideLaserInfo {
    T_JzSideLaserAttribute attribute;
    JZ_MODULE_CONTROL_WAY ControlMode; //控制模式 
    JZ_DEVICE_PORT_TYPE Device; //控制的设备
    int FrameSequence;//是否指定特别的序列号
}T_JzSideLaserInfo;

/* Exported types ------------------------------------------------------------*/

/* Exported functions --------------------------------------------------------*/
T_JZsdkReturnCode SideLaser_param(int flagcode, enum SideLaserParam paramflag, int *value);


T_JZsdkReturnCode SideLaser_Init(T_JzSideLaserInfo LaserInfo);
T_JZsdkReturnCode SideLaser_GetInfo(T_JzSideLaserInfo* SideLaserInfo);
T_JZsdkReturnCode SideLaser_SetMode(E_SideLaserMode mode);
T_JZsdkReturnCode SideLaser_SetControl(int status);


#ifdef __cplusplus
}
#endif

#endif