main.cpp 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #include <QCoreApplication>
  2. #include "videocore.h"
  3. #include "ytvideo.h"
  4. #include "../ytUserInfoProcess/userinfo.h"
  5. #include "../DataPrecessDog/dataprecess.h"
  6. UserInfoShm *userinfoShm;
  7. SysConfShm *sysConfShm;
  8. DataProcessShm *dataProcessShm;
  9. VideosensorList *vSensorList;
  10. bool shm_load(){
  11. int shmid;
  12. key_t key;
  13. if((key = ftok(SHM_PATH,static_cast<int>(SHM_PORT)))==-1)
  14. return false;
  15. if((shmid = shmget(key,sizeof(DataProcessShm),IPC_CREAT|0666))==-1)
  16. return false;
  17. dataProcessShm = static_cast<DataProcessShm *>(shmat(shmid,nullptr,0));
  18. if((key = ftok(UISHM_PATH,static_cast<int>(UISHM_PORT)))==-1)
  19. return false;
  20. if((shmid = shmget(key,sizeof(UserInfoShm),IPC_CREAT|0666))==-1)
  21. return false;
  22. userinfoShm = static_cast<UserInfoShm *>(shmat(shmid,nullptr,0));
  23. if((key = ftok(UISHM_PATH,static_cast<int>(SYSCONF_PORT)))==-1)
  24. return false;
  25. if((shmid = shmget(key,sizeof(SysConfShm),IPC_CREAT|0666))==-1)
  26. return false;
  27. sysConfShm = static_cast<SysConfShm *>(shmat(shmid,nullptr,0));
  28. if((key=ftok(VASHM_PATH,static_cast<int>(VASHM_PORT)))==-1)
  29. return false;
  30. if((shmid=shmget(key,sizeof(VideosensorList),IPC_CREAT|0666))==-1)
  31. return false;
  32. vSensorList = static_cast<VideosensorList *>(shmat(shmid,nullptr,0));
  33. return true;
  34. }
  35. int main(int argc, char *argv[])
  36. {
  37. QCoreApplication a(argc, argv);
  38. if(shm_load()){
  39. VideoCore *core = new VideoCore(nullptr);
  40. core->start();
  41. }else
  42. exit(1);
  43. return a.exec();
  44. }