nx_metadata_sdk  1.0
Metadata SDK
i_data_packet.h
1 // Copyright 2018-present Network Optix, Inc. Licensed under MPL 2.0: www.mozilla.org/MPL/2.0/
2 
3 #pragma once
4 
5 #include <cstdint>
6 
7 #include <nx/kit/flags.h>
8 #include <nx/sdk/interface.h>
9 
10 namespace nx {
11 namespace sdk {
12 namespace analytics {
13 
17 class IDataPacket: public Interface<IDataPacket>
18 {
19 public:
20  enum class Flags: uint32_t
21  {
22  none = 0,
23 
28  cameraClockTimestamp = 1 << 0,
29  };
30 
31 public:
32  static auto interfaceId() { return makeId("nx::sdk::analytics::IDataPacket"); }
33 
37  virtual int64_t timestampUs() const = 0;
38 };
39 using IDataPacket0 = IDataPacket;
40 
42 
43 } // namespace analytics
44 } // namespace sdk
45 } // namespace nx
Definition: interface.h:49
virtual int64_t timestampUs() const =0
Flags
Definition: i_data_packet.h:20
Definition: apple_utils.h:6
#define NX_KIT_ENABLE_FLAGS(ENUM)
Definition: flags.h:78
static constexpr const InterfaceId * makeId(const char(&charArray)[len])
Definition: i_ref_countable.h:77
Definition: i_data_packet.h:17