stub_analytics_plugin  1.6
Network Optix Video Analytics SDK
uncompressed_video_frame.h
1 #pragma once
2 
3 #include <nx/sdk/analytics/media_frame.h>
4 #include <nx/sdk/common.h>
5 
6 namespace nx {
7 namespace sdk {
8 namespace analytics {
9 
14 static const nxpl::NX_GUID IID_UncompressedVideoFrame =
15  {{0x46,0xb3,0x52,0x7f,0x17,0xf1,0x4e,0x29,0x98,0x6f,0xfa,0x1a,0xcc,0x87,0xac,0x0d}};
16 
18 {
19 public:
20  enum class PixelFormat
21  {
22  yuv420,
23  argb,
24  abgr,
25  rgba,
26  bgra,
27  rgb,
28  bgr,
29  count
30  };
31 
32  enum class Handle
33  {
34  none = 0,
35  glTexture,
36  eglImage,
37  user = 1000
38  };
39 
43  virtual int width() const = 0;
44 
48  virtual int height() const = 0;
49 
53  virtual Ratio sampleAspectRatio() const = 0;
54 
55  virtual PixelFormat pixelFormat() const = 0;
56 
57  virtual Handle handleType() const = 0;
58 
62  virtual int handle() const = 0;
63 
68  virtual int lineSize(int plane) const = 0;
69 
75  virtual bool map() const = 0;
76 
77  virtual void unmap() const = 0;
78 };
79 
80 } // namespace analytics
81 } // namespace sdk
82 } // namespace nx
Definition: common.h:40
GUID of plugin interface.
Definition: plugin_api.h:21
virtual int lineSize(int plane) const =0
Definition: uncompressed_video_frame.h:17
Definition: debug.cpp:14
Definition: media_frame.h:19
virtual Ratio sampleAspectRatio() const =0