Blame view

src/interface/DeviceRgbMemory.hpp 1.49 KB
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
1
2
3
  #ifndef __DEVICE_RGB_MEMORY_H__
  #define __DEVICE_RGB_MEMORY_H__
  
92989af0   ming   更新解码器
4
5
  #include<string>
  
92989af0   ming   更新解码器
6
7
8
9
  #include "utiltools.hpp"
  
  using namespace std;
  
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
10
  class DeviceRgbMemory{
92989af0   ming   更新解码器
11
12
  
  public:
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
13
       DeviceRgbMemory(int _channel, int _width, int _height, string _id, string _dev_id, bool _key_frame, bool _isused){
92989af0   ming   更新解码器
14
15
16
          channel = _channel;
          width = _width;
          height = _height;
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
17
          data_size = channel * width * height;
92989af0   ming   更新解码器
18
19
          isused = _isused;
          id = _id;
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
20
21
          device_id = _dev_id;
          key_frame = _key_frame;
92989af0   ming   更新解码器
22
          timestamp = UtilTools::get_cur_time_ms();
92989af0   ming   更新解码器
23
24
      }
  
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
25
      virtual ~DeviceRgbMemory(){}
92989af0   ming   更新解码器
26
27
      
      int getSize() {
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
28
          return data_size;
92989af0   ming   更新解码器
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
      }
      
      bool isIsused() {
          return isused;
      }
  
      void setIsused(bool _isused) {
          isused = _isused;
          // 更新时间戳
          timestamp = UtilTools::get_cur_time_ms();
      }
  
      string getId() {
          return id;
      }
  
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
45
46
      string getDeviceId() {
          return device_id;
92989af0   ming   更新解码器
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
      }
  
      unsigned char* getMem(){
          return pHwRgb;
      }
  
      long long getTimesstamp(){
          return timestamp;
      }
  
      int getWidth(){
          return width;
      }
  
      int getHeight(){
          return height;
      }
  
      int getChannel(){
          return channel;
      }
  
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
69
70
71
72
73
74
      bool isKeyFrame(){
          return key_frame;
      }
  
  public:
      int data_size;
92989af0   ming   更新解码器
75
76
      bool isused;
      string id;
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
77
      string device_id;
92989af0   ming   更新解码器
78
79
80
81
82
      unsigned char * pHwRgb{nullptr};
      long long timestamp;
      int width{0};
      int height{0};
      int channel{3};
63e6f7bc   Hu Chunming   完成dvpp。但是nv和gb281...
83
84
85
86
      bool key_frame;
  };
  
  #endif