📄 datastruct.h
字号:
/*********************************************************************** * 文件名: dataStruct.h * Copyright (C): * 创建人: 马翌伦 * 日期: * 修改人: * 日期: * 描述: 定义全局变量和数据结构,此文件中的变量为其他所有文件所需要使用的 * 版本: ***********************************************************************/#ifndef DATASTRUCT_H#define DATASTRUCT_H#include <stdlib.h>#include <pthread.h>#include "../csr_sys/include/csr.h"#define SIGSHUT 33 //关闭信号 shut down#define SIGHOLO 34 //全息信号 holographic#define SIGGAME 35 //游戏信号 game#define SIGSELECT 36 //选人信号 select#define SIGWAY 37 //引路信号 lead the way#define SIGNOMAL 38 //进入正常模式#define SIGOUT 39 //退出正常模式#define SIGDRAW 40 //收到该信号,读取轨迹位置#define SIGSTART 41 //收到该信号,读取手的坐标,以此作为起始点#define NUM_SHM 4#define PATH_FACE "/dev/shm/face" //用于共享内存key键直#define ID_FACE 0 //用于共享内存key键值#define PATH_HAND "/dev/shm/hand"#define ID_HAND 0#define PATH_HANDTRACK "/dev/shm/handtrack"#define ID_HANDTRACK 0typedef struct _face { pthread_rwlock_t rwlock; //读写锁,用于读写同步 int mode; //当前所处在的模式 int x; //人脸x坐标 int y; //人脸y坐标 int distance; //人脸离摄像头距离} Face;typedef struct _hand { pthread_rwlock_t rwlock; //读写锁,用于读写同步 int mode; //当前所处在的模式 int x; //人手x坐标 int y; //人手y坐标 int click; //是否有点击动作0表示没有,1表示有} Hand;typedef struct _handTrack { pthread_rwlock_t rwlock; //读写锁,用于读写同步 int direction; //手运动的方向上(0)下(1)左(2)右(3) int distance; //手离摄像头的距离} HandTrack;#define LEN_SHM 1#define FACE_SHM_SIZE (LEN_SHM * sizeof (Face))#define HAND_SHM_SIZE (LEN_SHM * sizeof (Hand))#define HANDTRACK_SHM_SIZE (LEN_SHM * sizeof (HandTrack))#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -