6 #include <condition_variable> 12 #include <nx/sdk/analytics/i_event_metadata.h> 13 #include <nx/sdk/analytics/helpers/consuming_device_agent.h> 16 #include "stub_analytics_plugin_events_ini.h" 19 namespace vms_server_plugins {
24 const std::string kDeclareAdditionalEventTypesSetting =
"declareAdditionalEventTypesSetting";
25 const std::string kGenerateEventsSetting =
"generateEvents";
34 virtual void doSetNeededMetadataTypes(
45 int64_t usSinceEpoch()
const;
47 void stopFetchingMetadata();
49 void eventThreadLoop();
50 void startEventThread();
51 void stopEventThread();
56 std::unique_ptr<std::thread> m_eventThread;
57 std::mutex m_eventThreadMutex;
58 std::condition_variable m_eventThreadCondition;
59 std::atomic<bool> m_terminated{
false};
60 std::atomic<bool> m_needToGenerateEvents{
false};
61 std::string m_eventTypeId;
63 struct DeviceAgentSettings
65 std::atomic<bool> declareAdditionalEventTypes{
false};
66 std::atomic<bool> generateEvents{
true};
69 DeviceAgentSettings m_deviceAgentSettings;
73 int currentEventTypeIndex = 0;
78 EventContext m_eventContext;
81 const std::string kLineCrossingEventType =
"nx.stub.lineCrossing";
82 const std::string kObjectInTheAreaEventType =
"nx.stub.objectInTheArea";
83 const std::string kLoiteringEventType =
"nx.stub.loitering";
84 const std::string kIntrusionEventType =
"nx.stub.intrusion";
85 const std::string kGunshotEventType =
"nx.stub.gunshot";
86 const std::string kSuspiciousNoiseEventType =
"nx.stub.suspiciousNoise";
87 const std::string kSoundRelatedEventGroup =
"nx.stub.soundRelated";
88 const std::string kAdditionalEventType =
"nx.stub.additionalEvent1";
89 const std::string kAdditionalEventType2 =
"nx.stub.additionalEvent2";
90 const std::string kEventWithImageEventType =
"nx.stub.eventWithImage";
virtual nx::sdk::Result< const nx::sdk::ISettingsResponse * > settingsReceived() override
Definition: device_agent.cpp:221
Definition: consuming_device_agent.h:36
Definition: i_device_info.h:13
Definition: device_agent.h:27
Definition: apple_utils.h:6
virtual std::string manifestString() const override
Definition: device_agent.cpp:162