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 <stdint.h>
6
7 #include <nx/kit/flags.h>
8 #include <nx/sdk/interface.h>
9
10 namespace nx::sdk::analytics {
11
15 class IDataPacket: public Interface<IDataPacket>
16 {
17 public:
18 enum class Flags: uint32_t
19 {
20 none = 0,
21
26 cameraClockTimestamp = 1 << 0,
27 };
28
29 public:
30 static auto interfaceId() { return makeId("nx::sdk::analytics::IDataPacket"); }
31
35 virtual int64_t timestampUs() const = 0;
36 };
37 using IDataPacket0 = IDataPacket;
38
39 NX_KIT_ENABLE_FLAGS(IDataPacket::Flags);
40
41 } // namespace nx::sdk::analytics
nx::sdk::Interface
Definition: interface.h:48
nx::sdk::analytics::IDataPacket::Flags::cameraClockTimestamp
nx::sdk::analytics::IDataPacket::timestampUs
virtual int64_t timestampUs() const =0
nx::sdk::analytics
Definition: consuming_device_agent.cpp:24
nx::sdk::analytics::IDataPacket::Flags
Flags
Definition: i_data_packet.h:18
NX_KIT_ENABLE_FLAGS
#define NX_KIT_ENABLE_FLAGS(ENUM)
Definition: flags.h:78
flags.h
nx::sdk::analytics::IDataPacket
Definition: i_data_packet.h:15
nx::sdk::IRefCountable::makeId
static const InterfaceId * makeId(const char(&charArray)[len])
Definition: i_ref_countable.h:77