nx_server_plugin_sdk  1.0
Server Plugin SDK
engine.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 <nx/sdk/cloud_storage/i_async_operation_handler.h>
6 #include <nx/sdk/cloud_storage/i_engine.h>
7 #include <nx/sdk/helpers/ref_countable.h>
8 #include <nx/sdk/i_utility_provider.h>
9 
11 
12 class Engine: public nx::sdk::RefCountable<nx::sdk::cloud_storage::IEngine>
13 {
14 public:
15  Engine(
16  const nx::sdk::cloud_storage::IAsyncOperationHandler* asyncOperationHandler,
17  const std::string& integrationId);
18 
19  virtual void startAsyncTasks(const char* lastSequenceId) override;
20  virtual void stopAsyncTasks() override;
21 
22  virtual void doQueryBookmarks(
23  const char* filter,
24  nx::sdk::Result<nx::sdk::IString*>* outResult) override;
25 
26  virtual nx::sdk::ErrorCode deleteBookmark(const char* bookmarkId) override;
27  virtual nx::sdk::ErrorCode saveMetadata(
28  const char* deviceId,
29  nx::sdk::cloud_storage::MetadataType type,
30  const char* data) override;
31 
32  virtual bool isOnline() const override;
33  virtual nx::sdk::ErrorCode storageSpace(
35 
36 protected:
37  virtual void doObtainDeviceAgent(
39  const nx::sdk::IDeviceInfo* deviceInfo) override;
40 
41  virtual void doQueryMotionTimePeriods(
42  const char* filter,
43  nx::sdk::Result<nx::sdk::IString*>* outResult) override;
44 
45  virtual void doQueryAnalytics(
46  const char* filter,
47  nx::sdk::Result<nx::sdk::IString*>* outResult) override;
48 
49  virtual void doQueryAnalyticsTimePeriods(
50  const char* filter,
51  nx::sdk::Result<nx::sdk::IString*>* outResult) override;
52 
53  virtual void doFetchTrackImage(
54  const char* objectTrackId,
55  nx::sdk::cloud_storage::TrackImageType type,
56  nx::sdk::Result<nx::sdk::IString*>* outResult) const override;
57 };
58 
59 } // nx::vms_server_plugins::cloud_storage::sample
virtual void startAsyncTasks(const char *lastSequenceId) override
Definition: engine.cpp:17
Definition: i_engine.h:24
Definition: i_async_operation_handler.h:62
virtual nx::sdk::ErrorCode storageSpace(nx::sdk::cloud_storage::StorageSpace *storageSpace) const override
Definition: engine.cpp:88
virtual nx::sdk::ErrorCode saveMetadata(const char *deviceId, nx::sdk::cloud_storage::MetadataType type, const char *data) override
Definition: engine.cpp:75
Definition: i_device_info.h:13
virtual bool isOnline() const override
Definition: engine.cpp:83
Definition: result.h:52
virtual void stopAsyncTasks() override
Definition: engine.cpp:21
Definition: device_agent.cpp:13
Definition: ref_countable.h:83