5 #include <camera/camera_plugin.h> 6 #include <nx/sdk/i_device_info.h> 7 #include <nx/sdk/i_list.h> 8 #include <nx/sdk/i_integration.h> 9 #include <nx/sdk/interface.h> 10 #include <nx/sdk/ptr.h> 11 #include <nx/sdk/result.h> 13 #include "i_device_agent.h" 17 enum class MetadataType
26 int64_t totalSpace = -1;
27 int64_t freeSpace = -1;
30 enum class TrackImageType
48 static auto interfaceId() {
return makeId(
"nx::sdk::archive::IEngine"); }
50 protected:
virtual void doObtainDeviceAgent(
59 doObtainDeviceAgent(&result, deviceInfo);
63 protected:
virtual void doQueryBookmarks(
const char* filter,
Result<IString*>* outResult) = 0;
73 doQueryBookmarks(filter, &result);
77 public:
virtual ErrorCode deleteBookmark(
const char* bookmarkId) = 0;
79 protected:
virtual void doQueryMotionTimePeriods(
90 doQueryMotionTimePeriods(filter, &result);
94 protected:
virtual void doQueryAnalytics(
const char* filter,
Result<IString*>* outResult) = 0;
104 doQueryAnalytics(filter, &result);
108 protected:
virtual void doQueryAnalyticsTimePeriods(
119 doQueryAnalyticsTimePeriods(filter, &result);
131 const char* deviceId, MetadataType type,
const char* data) = 0;
147 doFetchTrackImage(objectTrackId, type, &result);
151 protected:
virtual void doFetchTrackImage(
152 const char* objectTrackId, TrackImageType type,
Result<IString*>* outResult)
const = 0;
168 public:
virtual bool isOnline()
const = 0;
Definition: i_engine.h:24
Result< IString * > queryAnalyticsTimePeriods(const char *filter)
Definition: i_engine.h:116
Definition: interface.h:48
Result< IString * > queryBookmarks(const char *filter)
Definition: i_engine.h:70
Result< IString * > queryMotionTimePeriods(const char *filter)
Definition: i_engine.h:87
virtual Result< IDeviceAgent * > obtainDeviceAgent(const IDeviceInfo *deviceInfo)
Definition: i_engine.h:56
Definition: i_engine.h:45
virtual bool isOnline() const =0
Result< IString * > fetchTrackImage(const char *objectTrackId, TrackImageType type) const
Definition: i_engine.h:144
virtual ErrorCode saveMetadata(const char *deviceId, MetadataType type, const char *data)=0
virtual ErrorCode storageSpace(StorageSpace *storageSpace) const =0
Definition: i_device_info.h:13
virtual void stopAsyncTasks()=0
virtual void startAsyncTasks(const char *lastSequenceId)=0
Definition: algorithm.cpp:9
virtual void flushMetadata(MetadataType type)=0
Result< IString * > queryAnalytics(const char *filter)
Definition: i_engine.h:101
static const InterfaceId * makeId(const char(&charArray)[len])
Definition: i_ref_countable.h:77