takephoto.go 822 B

12345678910111213141516171819202122232425262728293031323334
  1. package mvs_u_takephoto
  2. import (
  3. "time"
  4. "hnyfkj.com.cn/rtu/linux/baseapp"
  5. )
  6. // 相机模块的名称
  7. const MODULE_NAME = "TakePhoto"
  8. // 相机模块初始化, 设置必要的运行环境参数, 只有成功才能进行后续的拍照操作
  9. func ModuleInit() bool {
  10. myUsbfsMemSize := 200 // 单位: 兆字节
  11. bSetOK := false
  12. for range 5 {
  13. if baseapp.IsExit1() {
  14. return false
  15. }
  16. if getSysUsbfsMemCurrentSize() >= myUsbfsMemSize {
  17. bSetOK = true
  18. break // 已满足启动拍照程序的条件, 退出循环
  19. }
  20. ret := setSysUsbfsMemSize(myUsbfsMemSize)
  21. if ret == -1 {
  22. time.Sleep(1 * time.Second)
  23. }
  24. }
  25. if !bSetOK {
  26. baseapp.Logger.Errorf("[%s] 无法将系统\"usbfs\"的内存大小设置为: %dMB, 相机模块初始化失败!!", MODULE_NAME, myUsbfsMemSize)
  27. return false
  28. }
  29. return true
  30. }