| Face Engine SDK 5.32.0 A face detection, recognition and tracking engine.

IImageTransfer.h
1 #pragma once
2
3 #include <fsdk/FSDKError.h>
4 #include <fsdk/Types.h>
5
6 #include <fsdk/vlc/future.h>
7
8 #include <fsdk/IImagesBatch.h>
9
10 namespace fsdk {
11
12 #ifndef DOXYGEN_SHOULD_SKIP_THIS
13 DECLARE_SMARTPTR(IImageTransfer);
14 #endif
15
29 struct IImageTransfer : IRefCounted {
30
39 virtual ResultValue<FSDKError, Ref<IImagesBatch>>
40 transfer(Span<const Image> images, Image::MemoryResidence residence) const noexcept = 0;
41
52 virtual Result<FSDKError> validate(
53 Span<const Image> images,
54 Image::MemoryResidence residence,
55 Span<Result<FSDKError>> errors) const noexcept = 0;
56
60 using ImagesBatchFuture = vlc::future<IImagesBatchPtr>;
61
73 virtual ImagesBatchFuture
74 transferAsync(Span<const Image> images, Image::MemoryResidence residence) const = 0;
75 };
76
78 } // namespace fsdk
fsdk::IImageTransfer::transfer
virtual ResultValue< FSDKError, Ref< IImagesBatch > > transfer(Span< const Image > images, Image::MemoryResidence residence) const noexcept=0
Transfer of multiple images.
DECLARE_SMARTPTR
#define DECLARE_SMARTPTR(X)
Smart ptr declaration helper macro.
Definition: Def.h:56
fsdk
SDK namespace.
Definition: IAGSEstimator.h:8
fsdk::Result
A structure that encapsulates an action result enumeration.
Definition: Result.h:27
Types.h
Common data types and structures.
FSDKError.h
Common SDK error codes.
fsdk::IRefCounted
Base strong reference counted object interface.
Definition: IRefCounted.h:37
fsdk::Image::MemoryResidence
MemoryResidence
Memory residence.
Definition: Image.h:108
fsdk::IImageTransfer::transferAsync
virtual ImagesBatchFuture transferAsync(Span< const Image > images, Image::MemoryResidence residence) const =0
Asynchronously transfer multiple images.
fsdk::ResultValue
Addon for Result to output some value aside the result. Specialization for copiable types...
Definition: ResultValue.h:21
fsdk::IImageTransfer::ImagesBatchFuture
vlc::future< IImagesBatchPtr > ImagesBatchFuture
Common alias for IImageTransfer asynchronous interface.
Definition: IImageTransfer.h:60
fsdk::IImageTransfer
Image transfer facility which give speed up of usage internal memory pool.
Definition: IImageTransfer.h:29
fsdk::IImageTransfer::validate
virtual Result< FSDKError > validate(Span< const Image > images, Image::MemoryResidence residence, Span< Result< FSDKError >> errors) const noexcept=0
Validate input of multiple frames in a single function call.
fsdk::Span
Span. Not owning data view. It incapsulated pointer to the continuous array with one or more T objec...
Definition: Span.h:14