3DiVi Face SDK  3.20.0
 Указатель Классы Пространства имен Файлы Функции Переменные Определения типов Перечисления Элементы перечислений Свойства Группы
c_api_functions_list_macro.h
1 #ifndef __pbio__imp_exp_macro_1bcdd890e87a41b786dfa83f9c4236ad
2 #define __pbio__imp_exp_macro_1bcdd890e87a41b786dfa83f9c4236ad
3 
4 
5 #include <stdint.h>
6 
7 typedef struct ContextEH ContextEH;
8 typedef struct HContext HContext;
9 typedef struct HPBlock HPBlock;
10 
11 namespace pbio {
12 namespace facerec {
13 
14 class AgeGenderEstimatorImpl;
15 class CameraCalibratorImpl;
16 class CapturerImpl;
17 class DepthLivenessEstimatorImpl;
18 class IRLivenessEstimatorImpl;
19 class Liveness2DEstimatorImpl;
20 class FaceAttributesEstimatorImpl;
21 class EmotionsEstimatorImpl;
22 class FaceQualityEstimatorImpl;
23 class LivenessEstimatorImpl;
24 class QualityEstimatorImpl;
25 class RawSampleImpl;
26 class RecognizerImpl;
27 class TemplateImpl;
28 class TemplatesIndexImpl;
29 class VideoWorkerImpl;
30 class StructStorageImpl;
31 
32 namespace capi {
33 
34  enum
35  {
36  VideoWorker_something_Processing_Enable = 1,
37  VideoWorker_something_Processing_Disable = 2,
38  VideoWorker_something_AgeGender_Enable = 3,
39  VideoWorker_something_AgeGender_Disable = 4,
40  VideoWorker_something_Emotions_Enable = 5,
41  VideoWorker_something_Emotions_Disable = 6,
42  };
43 
44  typedef void (*assign_floats_vector_func_type)(
45  void* pointers_vector,
46  float const* elements,
47  int32_t elements_count);
48 
49  typedef void (*assign_pointers_vector_func_type)(
50  void* pointers_vector,
51  void* const* elements,
52  int32_t elements_count);
53 
54 
55  typedef void (*binary_stream_write_func_type)(
56  void* stream,
57  const void* data,
58  uint64_t bytes_count);
59 
60  typedef void (*binary_stream_read_func_type)(
61  void* stream,
62  void* data,
63  uint64_t bytes_count);
64 
65 
66  typedef
67  void (*VideoWorker_TrackingCallbackFunc)(
68  void* err_stream,
69  void* this_vw,
70  void const* callback_data,
71 
72  const int32_t callbacks_count,
73  void* const* const callbacks_func,
74  void* const* const callbacks_userdata,
75  const int32_t u_callbacks_count,
76  void* const* const u_callbacks_func,
77  void* const* const u_callbacks_userdata);
78 
79  typedef
80  void (*VideoWorker_TemplateCreatedCallbackFunc)(
81  void* err_stream,
82  void* this_vw,
83  void const* callback_data,
84 
85  const int32_t callbacks_count,
86  void* const* const callbacks_func,
87  void* const* const callbacks_userdata,
88  const int32_t u_callbacks_count,
89  void* const* const u_callbacks_func,
90  void* const* const u_callbacks_userdata);
91 
92  typedef
93  void (*VideoWorker_MatchFoundCallbackFunc)(
94  void* err_stream,
95  void* this_vw,
96  void const* callback_data,
97 
98  const int32_t callbacks_count,
99  void* const* const callbacks_func,
100  void* const* const callbacks_userdata,
101  const int32_t ext_callbacks_count,
102  void* const* const ext_callbacks_func,
103  void* const* const ext_callbacks_userdata,
104  const int32_t u_callbacks_count,
105  void* const* const u_callbacks_func,
106  void* const* const u_callbacks_userdata);
107 
108  typedef
109  void (*VideoWorker_TrackingLostCallbackFunc)(
110  void* err_stream,
111  void* this_vw,
112  void const* callback_data,
113 
114  const int32_t callbacks_count,
115  void* const* const callbacks_func,
116  void* const* const callbacks_userdata,
117  const int32_t u_callbacks_count,
118  void* const* const u_callbacks_func,
119  void* const* const u_callbacks_userdata);
120 
121  typedef
122  void (*VideoWorker_StiPersonOutdatedCallbackFunc)(
123  void* err_stream,
124  void* this_vw,
125  void const* callback_data,
126 
127  const int32_t callbacks_count,
128  void* const* const callbacks_func,
129  void* const* const callbacks_userdata);
130 
131 
132 } // capi namespace
133 } // facerec namespace
134 } // pbio namespace
135 
136 
137 #define _583e_ADD_NAMESPACE(a) __4848a76477c449608aa5deb15c5495e4_facerec_v3_##a
138 
139 #define _583e_STR_ADD_NAMESPACE(a) _583e_STRINGISE2( _583e_ADD_NAMESPACE(a) )
140 
141 #define _583e_STRINGISE(a) #a
142 
143 #define _583e_STRINGISE2(a) _583e_STRINGISE( a )
144 
145 #define _TDV_ADD_STATIC_PREFIX(a) static_##a
146 
147 // decl suppose to be a macro: decl(rtype, name, typed_args, args, return)
148 #define __TDV_FLIST(decl) \
149  \
150  \
151  decl( \
152  void*, \
153  TDVFaceAttributesEstimator_createByConfig, \
154  ( \
155  const char* serialisedConfig \
156  ), \
157  ( \
158  serialisedConfig \
159  ), \
160  return ) \
161  \
162  \
163  decl( \
164  char*, \
165  TDVProcessingBlock_processSparse, \
166  ( \
167  void* block_ptr, \
168  char* serialisedCtx \
169  ), \
170  ( \
171  block_ptr, \
172  serialisedCtx \
173  ), \
174  return ) \
175  \
176  \
177  decl( \
178  void*, \
179  TDVProcessingBlock_getException, \
180  ( \
181  void* block_ptr \
182  ), \
183  ( \
184  block_ptr \
185  ), \
186  return ) \
187  \
188  \
189  decl( \
190  void, \
191  TDVProcessingBlock_destroy, \
192  ( \
193  void* block_ptr \
194  ), \
195  ( \
196  block_ptr \
197  ), \
198  return ) \
199  \
200  \
201  decl( \
202  void, \
203  tdvFreeStr, \
204  ( \
205  char* ctx_ptr \
206  ), \
207  ( \
208  ctx_ptr \
209  ), \
210  return )
211 
212 
213 // decl suppose to be a macro: decl(rtype, name, typed_args, args, return)
214 #define __583e_FLIST(decl) \
215  \
216  \
217  \
218  \
219  decl( \
220  int64_t, \
221  StructStorage_get_int64, \
222  ( \
223  const void* struct_storage, \
224  int32_t field_id, \
225  void** out_exception \
226  ), \
227  ( \
228  struct_storage, \
229  field_id, \
230  out_exception \
231  ), \
232  return ) \
233  \
234  decl( \
235  double, \
236  StructStorage_get_double, \
237  ( \
238  const void* struct_storage, \
239  int32_t field_id, \
240  void** out_exception \
241  ), \
242  ( \
243  struct_storage, \
244  field_id, \
245  out_exception \
246  ), \
247  return ) \
248  \
249  decl( \
250  void*, \
251  StructStorage_get_pointer, \
252  ( \
253  const void* struct_storage, \
254  int32_t field_id, \
255  void** out_exception \
256  ), \
257  ( \
258  struct_storage, \
259  field_id, \
260  out_exception \
261  ), \
262  return ) \
263  \
264  decl( \
265  void, \
266  VideoWorker_errStreamWriteFunc, \
267  ( \
268  void* err_stream, \
269  const void* data, \
270  uint64_t bytes_count \
271  ), \
272  ( \
273  err_stream, \
274  data, \
275  bytes_count \
276  ), \
277  ) \
278  \
279  \
280  decl( \
281  void, \
282  VideoWorker_setThisVW, \
283  ( \
284  void* video_worker, \
285  void* this_vw, \
286  void** out_exception \
287  ), \
288  ( \
289  video_worker, \
290  this_vw, \
291  out_exception \
292  ), \
293  ) \
294  \
295  decl( \
296  void, \
297  VideoWorker_getMethodName, \
298  ( \
299  void* video_worker, \
300  void* name_stream, \
301  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
302  void** out_exception \
303  ), \
304  ( \
305  video_worker, \
306  name_stream, \
307  binary_stream_write_func, \
308  out_exception \
309  ), \
310  ) \
311  \
312  decl( \
313  int32_t, \
314  VideoWorker_getStreamsCount, \
315  ( \
316  void* video_worker, \
317  void** out_exception \
318  ), \
319  ( \
320  video_worker, \
321  out_exception \
322  ), \
323  return ) \
324  \
325  decl( \
326  int32_t, \
327  VideoWorker_getTrackingConveyorSize, \
328  ( \
329  void* video_worker, \
330  int32_t stream_id, \
331  void** out_exception \
332  ), \
333  ( \
334  video_worker, \
335  stream_id, \
336  out_exception \
337  ), \
338  return ) \
339  \
340  decl( \
341  int32_t, \
342  VideoWorker_addVideoFrame, \
343  ( \
344  void* video_worker, \
345  const void* image_data, \
346  int32_t image_width, \
347  int32_t image_height, \
348  int32_t image_format, \
349  int32_t stream_id, \
350  void** out_exception \
351  ), \
352  ( \
353  video_worker, \
354  image_data, \
355  image_width, \
356  image_height, \
357  image_format, \
358  stream_id, \
359  out_exception \
360  ), \
361  return ) \
362  \
363  decl( \
364  int32_t, \
365  VideoWorker_addVideoFrameWithTimestamp, \
366  ( \
367  void* video_worker, \
368  const void* image_data, \
369  int32_t image_width, \
370  int32_t image_height, \
371  int32_t image_format, \
372  int32_t stream_id, \
373  const uint64_t timestamp_microsec, \
374  void** out_exception \
375  ), \
376  ( \
377  video_worker, \
378  image_data, \
379  image_width, \
380  image_height, \
381  image_format, \
382  stream_id, \
383  timestamp_microsec, \
384  out_exception \
385  ), \
386  return ) \
387  \
388  decl( \
389  int32_t, \
390  VideoWorker_addVideoFrameWithTimestamp_with_crop, \
391  ( \
392  void* video_worker, \
393  const void* image_data, \
394  int32_t image_width, \
395  int32_t image_height, \
396  int32_t image_format, \
397  int32_t image_with_crop, \
398  int32_t image_crop_info_offset_x, \
399  int32_t image_crop_info_offset_y, \
400  int32_t image_crop_info_data_image_width, \
401  int32_t image_crop_info_data_image_height, \
402  int32_t stream_id, \
403  const uint64_t timestamp_microsec, \
404  void** out_exception \
405  ), \
406  ( \
407  video_worker, \
408  image_data, \
409  image_width, \
410  image_height, \
411  image_format, \
412  image_with_crop, \
413  image_crop_info_offset_x, \
414  image_crop_info_offset_y, \
415  image_crop_info_data_image_width, \
416  image_crop_info_data_image_height, \
417  stream_id, \
418  timestamp_microsec, \
419  out_exception \
420  ), \
421  return ) \
422  \
423  decl( \
424  void, \
425  VideoWorker_addDepthFrame, \
426  ( \
427  void* video_worker, \
428  const int32_t depth_map_rows, \
429  const int32_t depth_map_cols, \
430  const float depth_map_2_image_offset_x, \
431  const float depth_map_2_image_offset_y, \
432  const float depth_map_2_image_scale_x, \
433  const float depth_map_2_image_scale_y, \
434  const float horizontal_fov, \
435  const float vertical_fov, \
436  const float depth_unit_in_millimeters, \
437  uint16_t const* const depth_data, \
438  const int32_t depth_data_stride_in_bytes, \
439  int32_t stream_id, \
440  const uint64_t timestamp_microsec, \
441  void** out_exception \
442  ), \
443  ( \
444  video_worker, \
445  depth_map_rows, \
446  depth_map_cols, \
447  depth_map_2_image_offset_x, \
448  depth_map_2_image_offset_y, \
449  depth_map_2_image_scale_x, \
450  depth_map_2_image_scale_y, \
451  horizontal_fov, \
452  vertical_fov, \
453  depth_unit_in_millimeters, \
454  depth_data, \
455  depth_data_stride_in_bytes, \
456  stream_id, \
457  timestamp_microsec, \
458  out_exception \
459  ), \
460  ) \
461  \
462  decl( \
463  void, \
464  VideoWorker_addIRFrame, \
465  ( \
466  void* video_worker, \
467  const int32_t ir_frame_rows, \
468  const int32_t ir_frame_cols, \
469  const float ir_frame_2_image_offset_x, \
470  const float ir_frame_2_image_offset_y, \
471  const float ir_frame_2_image_scale_x, \
472  const float ir_frame_2_image_scale_y, \
473  const float ir_horizontal_fov, \
474  const float ir_vertical_fov, \
475  uint16_t const* const ir_frame_data, \
476  int32_t ir_data_stride_in_bytes, \
477  int32_t stream_id, \
478  const uint64_t timestamp_microsec, \
479  void** out_exception \
480  ), \
481  ( \
482  video_worker, \
483  ir_frame_rows, \
484  ir_frame_cols, \
485  ir_frame_2_image_offset_x, \
486  ir_frame_2_image_offset_y, \
487  ir_frame_2_image_scale_x, \
488  ir_frame_2_image_scale_y, \
489  ir_horizontal_fov, \
490  ir_vertical_fov, \
491  ir_frame_data, \
492  ir_data_stride_in_bytes, \
493  stream_id, \
494  timestamp_microsec, \
495  out_exception \
496  ), \
497  ) \
498  \
499  decl( \
500  void, \
501  VideoWorker_resetTrackerOnStream, \
502  ( \
503  void* video_worker, \
504  int32_t stream_id, \
505  void** out_exception \
506  ), \
507  ( \
508  video_worker, \
509  stream_id, \
510  out_exception \
511  ), \
512  ) \
513  \
514  decl( \
515  int32_t, \
516  VideoWorker_resetStream, \
517  ( \
518  void* video_worker, \
519  int32_t stream_id, \
520  void** out_exception \
521  ), \
522  ( \
523  video_worker, \
524  stream_id, \
525  out_exception \
526  ), \
527  return ) \
528  \
529  decl( \
530  void, \
531  VideoWorker_checkExceptions, \
532  ( \
533  void* video_worker, \
534  void** out_exception \
535  ), \
536  ( \
537  video_worker, \
538  out_exception \
539  ), \
540  ) \
541  \
542  decl( \
543  int32_t, \
544  VideoWorker_addTrackingCallback, \
545  ( \
546  void* video_worker, \
547  void* callback, \
548  void* userdata, \
549  void** out_exception \
550  ), \
551  ( \
552  video_worker, \
553  callback, \
554  userdata, \
555  out_exception \
556  ), \
557  return ) \
558  \
559  decl( \
560  int32_t, \
561  VideoWorker_addTrackingCallbackU, \
562  ( \
563  void* video_worker, \
564  void* callback, \
565  void* userdata, \
566  void** out_exception \
567  ), \
568  ( \
569  video_worker, \
570  callback, \
571  userdata, \
572  out_exception \
573  ), \
574  return ) \
575  \
576  decl( \
577  void, \
578  VideoWorker_removeTrackingCallback, \
579  ( \
580  void* video_worker, \
581  int32_t callback_id, \
582  void** out_exception \
583  ), \
584  ( \
585  video_worker, \
586  callback_id, \
587  out_exception \
588  ), \
589  ) \
590  \
591  decl( \
592  int32_t, \
593  VideoWorker_addMatchFoundCallback, \
594  ( \
595  void* video_worker, \
596  void* callback, \
597  void* userdata, \
598  void** out_exception \
599  ), \
600  ( \
601  video_worker, \
602  callback, \
603  userdata, \
604  out_exception \
605  ), \
606  return ) \
607  \
608  decl( \
609  void, \
610  VideoWorker_removeMatchFoundCallback, \
611  ( \
612  void* video_worker, \
613  int32_t callback_id, \
614  void** out_exception \
615  ), \
616  ( \
617  video_worker, \
618  callback_id, \
619  out_exception \
620  ), \
621  ) \
622  \
623  decl( \
624  int32_t, \
625  VideoWorker_addStiPersonOutdatedCallbackU, \
626  ( \
627  void* video_worker, \
628  void* callback, \
629  void* userdata, \
630  void** out_exception \
631  ), \
632  ( \
633  video_worker, \
634  callback, \
635  userdata, \
636  out_exception \
637  ), \
638  return ) \
639  \
640  decl( \
641  void, \
642  VideoWorker_removeStiPersonOutdatedCallback, \
643  ( \
644  void* video_worker, \
645  int32_t callback_id, \
646  void** out_exception \
647  ), \
648  ( \
649  video_worker, \
650  callback_id, \
651  out_exception \
652  ), \
653  ) \
654  \
655  decl( \
656  int32_t, \
657  VideoWorker_addTrackingLostCallback, \
658  ( \
659  void* video_worker, \
660  void* callback, \
661  void* userdata, \
662  void** out_exception \
663  ), \
664  ( \
665  video_worker, \
666  callback, \
667  userdata, \
668  out_exception \
669  ), \
670  return ) \
671  \
672  decl( \
673  int32_t, \
674  VideoWorker_addTrackingLostCallbackU, \
675  ( \
676  void* video_worker, \
677  void* callback, \
678  void* userdata, \
679  void** out_exception \
680  ), \
681  ( \
682  video_worker, \
683  callback, \
684  userdata, \
685  out_exception \
686  ), \
687  return ) \
688  \
689  decl( \
690  void, \
691  VideoWorker_removeTrackingLostCallback, \
692  ( \
693  void* video_worker, \
694  int32_t callback_id, \
695  void** out_exception \
696  ), \
697  ( \
698  video_worker, \
699  callback_id, \
700  out_exception \
701  ), \
702  ) \
703  \
704  decl( \
705  void, \
706  VideoWorker_toggleProcessing, /* #old */ \
707  ( \
708  void* video_worker, \
709  int32_t stream_id, \
710  int32_t do_processing, \
711  void** out_exception \
712  ), \
713  ( \
714  video_worker, \
715  stream_id, \
716  do_processing, \
717  out_exception \
718  ), \
719  ) \
720  \
721  decl( \
722  void, \
723  VideoWorker_toggleSomething, \
724  ( \
725  void* video_worker, \
726  int32_t stream_id, \
727  int32_t something, \
728  void** out_exception \
729  ), \
730  ( \
731  video_worker, \
732  stream_id, \
733  something, \
734  out_exception \
735  ), \
736  ) \
737  \
738  decl( \
739  void, \
740  VideoWorker_setDatabase, \
741  ( \
742  void* video_worker, \
743  int32_t acceleration, \
744  int32_t elements_count, \
745  uint64_t const* elements_ids, \
746  uint64_t const* persons_ids, \
747  pbio::facerec::TemplateImpl const* const* elements_templates, \
748  float const* elements_thresholds, \
749  void** out_exception \
750  ), \
751  ( \
752  video_worker, \
753  acceleration, \
754  elements_count, \
755  elements_ids, \
756  persons_ids, \
757  elements_templates, \
758  elements_thresholds, \
759  out_exception \
760  ), \
761  ) \
762  \
763  decl( \
764  int32_t, \
765  VideoWorker_addMatchFoundCallbackExt, \
766  ( \
767  void* video_worker, \
768  void* callback, \
769  void* userdata, \
770  void** out_exception \
771  ), \
772  ( \
773  video_worker, \
774  callback, \
775  userdata, \
776  out_exception \
777  ), \
778  return ) \
779  \
780  decl( \
781  int32_t, \
782  VideoWorker_addMatchFoundCallbackU, \
783  ( \
784  void* video_worker, \
785  void* callback, \
786  void* userdata, \
787  void** out_exception \
788  ), \
789  ( \
790  video_worker, \
791  callback, \
792  userdata, \
793  out_exception \
794  ), \
795  return ) \
796  \
797  decl( \
798  int32_t, \
799  VideoWorker_addTemplateCreatedCallback, \
800  ( \
801  void* video_worker, \
802  void* const callback, \
803  void* const userdata, \
804  void** out_exception \
805  ), \
806  ( \
807  video_worker, \
808  callback, \
809  userdata, \
810  out_exception \
811  ), \
812  return ) \
813  \
814  decl( \
815  int32_t, \
816  VideoWorker_addTemplateCreatedCallbackU, \
817  ( \
818  void* video_worker, \
819  void* const callback, \
820  void* const userdata, \
821  void** out_exception \
822  ), \
823  ( \
824  video_worker, \
825  callback, \
826  userdata, \
827  out_exception \
828  ), \
829  return ) \
830  \
831  decl( \
832  void, \
833  VideoWorker_removeTemplateCreatedCallback, \
834  ( \
835  void* video_worker, \
836  int32_t callback_id, \
837  void** out_exception \
838  ), \
839  ( \
840  video_worker, \
841  callback_id, \
842  out_exception \
843  ), \
844  ) \
845  \
846  decl( \
847  void, \
848  VideoWorker_setParameter, \
849  ( \
850  void* video_worker, \
851  const char* param_name, \
852  double param_value, \
853  void** out_exception \
854  ), \
855  ( \
856  video_worker, \
857  param_name, \
858  param_value, \
859  out_exception \
860  ), \
861  )\
862  decl( \
863  void*, \
864  VideoWorker_poolTrackResults, \
865  ( \
866  void* video_worker,\
867  int timeout, \
868  void** out_exception \
869  ), \
870  ( \
871  video_worker, \
872  timeout, \
873  out_exception \
874  ), \
875  return ) \
876  \
877  \
878  \
879  \
880  decl( \
881  int32_t, \
882  DepthLivenessEstimator_estimateLiveness, \
883  ( \
884  void* depth_liveness_estimator, \
885  pbio::facerec::RawSampleImpl const* raw_sample, \
886  int32_t depth_map_rows, \
887  int32_t depth_map_cols, \
888  float depth_map_2_image_offset_x, \
889  float depth_map_2_image_offset_y, \
890  float depth_map_2_image_scale_x, \
891  float depth_map_2_image_scale_y, \
892  float horizontal_fov, \
893  float vertical_fov, \
894  float depth_unit_in_millimeters, \
895  uint16_t const* depth_data, \
896  int32_t depth_data_stride_in_bytes, \
897  void** out_exception \
898  ), \
899  ( \
900  depth_liveness_estimator, \
901  raw_sample, \
902  depth_map_rows, \
903  depth_map_cols, \
904  depth_map_2_image_offset_x, \
905  depth_map_2_image_offset_y, \
906  depth_map_2_image_scale_x, \
907  depth_map_2_image_scale_y, \
908  horizontal_fov, \
909  vertical_fov, \
910  depth_unit_in_millimeters, \
911  depth_data, \
912  depth_data_stride_in_bytes, \
913  out_exception \
914  ), \
915  return ) \
916  \
917  decl( \
918  int32_t, \
919  IRLivenessEstimator_estimateLiveness, \
920  ( \
921  void* ir_liveness_estimator, \
922  pbio::facerec::RawSampleImpl const* raw_sample, \
923  int32_t ir_frame_rows, \
924  int32_t ir_frame_cols, \
925  float ir_frame_2_image_offset_x, \
926  float ir_frame_2_image_offset_y, \
927  float ir_frame_2_image_scale_x, \
928  float ir_frame_2_image_scale_y, \
929  float ir_horizontal_fov, \
930  float ir_vertical_fov, \
931  uint16_t const* ir_frame_data, \
932  int32_t ir_data_stride_in_bytes, \
933  void** out_exception \
934  ), \
935  ( \
936  ir_liveness_estimator, \
937  raw_sample, \
938  ir_frame_rows, \
939  ir_frame_cols, \
940  ir_frame_2_image_offset_x, \
941  ir_frame_2_image_offset_y, \
942  ir_frame_2_image_scale_x, \
943  ir_frame_2_image_scale_y, \
944  ir_horizontal_fov, \
945  ir_vertical_fov, \
946  ir_frame_data, \
947  ir_data_stride_in_bytes, \
948  out_exception \
949  ), \
950  return ) \
951  \
952  decl( \
953  void, \
954  Liveness2DEstimator_estimateLiveness, \
955  ( \
956  void* liveness_2d_estimator, \
957  pbio::facerec::RawSampleImpl const* raw_sample, \
958  int32_t* verdict, \
959  float* score, \
960  void** out_exception \
961  ), \
962  ( \
963  liveness_2d_estimator, \
964  raw_sample, \
965  verdict, \
966  score, \
967  out_exception \
968  ), \
969  return ) \
970  \
971  \
972  decl( \
973  void, \
974  FaceAttributesEstimator_getTaskName, \
975  ( \
976  void* face_attributes_estimator, \
977  void* name_task, \
978  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
979  void** out_exception \
980  ), \
981  ( \
982  face_attributes_estimator, \
983  name_task, \
984  binary_stream_write_func, \
985  out_exception \
986  ), \
987  ) \
988  \
989  \
990  decl( \
991  void, \
992  FaceAttributesEstimator_estimateMaskedFace, \
993  ( \
994  void* face_attributes_estimator, \
995  pbio::facerec::RawSampleImpl const* raw_sample, \
996  int32_t *verdict, \
997  float *score, \
998  void** out_exception \
999  ), \
1000  ( \
1001  face_attributes_estimator, \
1002  raw_sample, \
1003  verdict, \
1004  score, \
1005  out_exception \
1006  ), \
1007  return ) \
1008  \
1009  \
1010  decl( \
1011  void, \
1012  FaceAttributesEstimator_estimateEyesOpenness, \
1013  ( \
1014  void* face_attributes_estimator, \
1015  pbio::facerec::RawSampleImpl const* raw_sample, \
1016  int32_t *left_verdict, \
1017  int32_t *right_verdict, \
1018  float *left_score, \
1019  float *right_score, \
1020  void** out_exception \
1021  ), \
1022  ( \
1023  face_attributes_estimator, \
1024  raw_sample, \
1025  left_verdict, \
1026  right_verdict, \
1027  left_score, \
1028  right_score, \
1029  out_exception \
1030  ), \
1031  return ) \
1032  \
1033  \
1034  \
1035  \
1036  decl( \
1037  void, \
1038  CameraCalibrator_initCalibration, \
1039  ( \
1040  void* camera_calibrator, \
1041  int32_t image_width, \
1042  int32_t image_height, \
1043  int32_t pattern_type, \
1044  int32_t pattern_width, \
1045  int32_t pattern_height, \
1046  int32_t fix_aspect_ratio, \
1047  int32_t calib_zero_tangent_dist, \
1048  int32_t calib_fix_principal_point, \
1049  int32_t rational_distortion_model, \
1050  void** out_exception \
1051  ), \
1052  ( \
1053  camera_calibrator, \
1054  image_width, \
1055  image_height, \
1056  pattern_type, \
1057  pattern_width, \
1058  pattern_height, \
1059  fix_aspect_ratio, \
1060  calib_zero_tangent_dist, \
1061  calib_fix_principal_point, \
1062  rational_distortion_model, \
1063  out_exception \
1064  ), \
1065  ) \
1066  \
1067  decl( \
1068  void, \
1069  CameraCalibrator_addImage, \
1070  ( \
1071  void* camera_calibrator, \
1072  const void* image_data, \
1073  int32_t image_width, \
1074  int32_t image_height, \
1075  int32_t image_format, \
1076  int32_t* pattern_found, \
1077  int32_t* pattern_accepted, \
1078  float* pattern_out, \
1079  void** out_exception \
1080  ), \
1081  ( \
1082  camera_calibrator, \
1083  image_data, \
1084  image_width, \
1085  image_height, \
1086  image_format, \
1087  pattern_found, \
1088  pattern_accepted, \
1089  pattern_out, \
1090  out_exception \
1091  ), \
1092  ) \
1093  \
1094  decl( \
1095  void, \
1096  CameraCalibrator_addImage_with_crop, \
1097  ( \
1098  void* camera_calibrator, \
1099  const void* image_data, \
1100  int32_t image_width, \
1101  int32_t image_height, \
1102  int32_t image_format, \
1103  int32_t image_with_crop, \
1104  int32_t image_crop_info_offset_x, \
1105  int32_t image_crop_info_offset_y, \
1106  int32_t image_crop_info_data_image_width, \
1107  int32_t image_crop_info_data_image_height, \
1108  int32_t* pattern_found, \
1109  int32_t* pattern_accepted, \
1110  float* pattern_out, \
1111  void** out_exception \
1112  ), \
1113  ( \
1114  camera_calibrator, \
1115  image_data, \
1116  image_width, \
1117  image_height, \
1118  image_format, \
1119  image_with_crop, \
1120  image_crop_info_offset_x, \
1121  image_crop_info_offset_y, \
1122  image_crop_info_data_image_width, \
1123  image_crop_info_data_image_height, \
1124  pattern_found, \
1125  pattern_accepted, \
1126  pattern_out, \
1127  out_exception \
1128  ), \
1129  ) \
1130  \
1131  decl( \
1132  float, \
1133  CameraCalibrator_getPatternSpaceCoverProgress, \
1134  ( \
1135  void* camera_calibrator, \
1136  void** out_exception \
1137  ), \
1138  ( \
1139  camera_calibrator, \
1140  out_exception \
1141  ), \
1142  return ) \
1143  \
1144  decl( \
1145  int32_t, \
1146  CameraCalibrator_getTip, \
1147  ( \
1148  void* camera_calibrator, \
1149  float* pattern_out, \
1150  void** out_exception \
1151  ), \
1152  ( \
1153  camera_calibrator, \
1154  pattern_out, \
1155  out_exception \
1156  ), \
1157  return ) \
1158  \
1159  decl( \
1160  float, \
1161  CameraCalibrator_calibrate, \
1162  ( \
1163  void* camera_calibrator, \
1164  int32_t max_used_patterns_count, \
1165  void** out_exception \
1166  ), \
1167  ( \
1168  camera_calibrator, \
1169  max_used_patterns_count, \
1170  out_exception \
1171  ), \
1172  return ) \
1173  \
1174  decl( \
1175  void, \
1176  CameraCalibrator_saveCameraParameters, \
1177  ( \
1178  void* camera_calibrator, \
1179  void* binary_stream, \
1180  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
1181  void** out_exception \
1182  ), \
1183  ( \
1184  camera_calibrator, \
1185  binary_stream, \
1186  binary_stream_write_func, \
1187  out_exception \
1188  ), \
1189  ) \
1190  \
1191  decl( \
1192  void, \
1193  CameraCalibrator_loadCameraParameters, \
1194  ( \
1195  void* camera_calibrator, \
1196  void* binary_stream, \
1197  pbio::facerec::capi::binary_stream_read_func_type binary_stream_read_func, \
1198  void** out_exception \
1199  ), \
1200  ( \
1201  camera_calibrator, \
1202  binary_stream, \
1203  binary_stream_read_func, \
1204  out_exception \
1205  ), \
1206  ) \
1207  \
1208  decl( \
1209  void, \
1210  CameraCalibrator_undistort, \
1211  ( \
1212  void* camera_calibrator, \
1213  const void* image_data, \
1214  int32_t image_width, \
1215  int32_t image_height, \
1216  int32_t image_format, \
1217  float alpha, \
1218  void* result_buffer, \
1219  void** out_exception \
1220  ), \
1221  ( \
1222  camera_calibrator, \
1223  image_data, \
1224  image_width, \
1225  image_height, \
1226  image_format, \
1227  alpha, \
1228  result_buffer, \
1229  out_exception \
1230  ), \
1231  ) \
1232  \
1233  decl( \
1234  void, \
1235  CameraCalibrator_undistort_with_crop, \
1236  ( \
1237  void* camera_calibrator, \
1238  const void* image_data, \
1239  int32_t image_width, \
1240  int32_t image_height, \
1241  int32_t image_format, \
1242  int32_t image_with_crop, \
1243  int32_t image_crop_info_offset_x, \
1244  int32_t image_crop_info_offset_y, \
1245  int32_t image_crop_info_data_image_width, \
1246  int32_t image_crop_info_data_image_height, \
1247  float alpha, \
1248  void* result_buffer, \
1249  void** out_exception \
1250  ), \
1251  ( \
1252  camera_calibrator, \
1253  image_data, \
1254  image_width, \
1255  image_height, \
1256  image_format, \
1257  image_with_crop, \
1258  image_crop_info_offset_x, \
1259  image_crop_info_offset_y, \
1260  image_crop_info_data_image_width, \
1261  image_crop_info_data_image_height, \
1262  alpha, \
1263  result_buffer, \
1264  out_exception \
1265  ), \
1266  ) \
1267  \
1268  \
1269  \
1270  \
1271  \
1272  decl( \
1273  void, \
1274  AgeGenderEstimator_estimateAgeGender, \
1275  ( \
1276  void* age_gender_estimator, \
1277  const pbio::facerec::RawSampleImpl* rawsample, \
1278  int32_t* age_class, \
1279  int32_t* gender, \
1280  float* age_years, \
1281  void** out_exception \
1282  ), \
1283  ( \
1284  age_gender_estimator, \
1285  rawsample, \
1286  age_class, \
1287  gender, \
1288  age_years, \
1289  out_exception \
1290  ), \
1291  ) \
1292  \
1293  \
1294  decl( \
1295  int32_t, \
1296  EmotionsEstimator_estimateEmotions, \
1297  ( \
1298  void* emotions_estimator, \
1299  const pbio::facerec::RawSampleImpl* rawsample, \
1300  void* data_stream, \
1301  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
1302  void** out_exception \
1303  ), \
1304  ( \
1305  emotions_estimator, \
1306  rawsample, \
1307  data_stream, \
1308  binary_stream_write_func, \
1309  out_exception \
1310  ), \
1311  return ) \
1312  \
1313  \
1314  decl( \
1315  void, \
1316  QualityEstimator_estimateQuality, \
1317  ( \
1318  void* quality_estimator, \
1319  const pbio::facerec::RawSampleImpl* rawsample, \
1320  int32_t *lighting, \
1321  int32_t *noise, \
1322  int32_t *sharpness, \
1323  int32_t *flare, \
1324  void** out_exception \
1325  ), \
1326  ( \
1327  quality_estimator, \
1328  rawsample, \
1329  lighting, \
1330  noise, \
1331  sharpness, \
1332  flare, \
1333  out_exception \
1334  ), \
1335  ) \
1336  \
1337  \
1338  decl( \
1339  float, \
1340  FaceQualityEstimator_estimateQuality, \
1341  ( \
1342  void* face_quality_estimator, \
1343  const pbio::facerec::RawSampleImpl* rawsample, \
1344  void** out_exception \
1345  ), \
1346  ( \
1347  face_quality_estimator, \
1348  rawsample, \
1349  out_exception \
1350  ), \
1351  return ) \
1352  \
1353  \
1354  decl( \
1355  void, \
1356  LivenessEstimator_addSample, \
1357  ( \
1358  void* liveness_estimator, \
1359  const pbio::facerec::RawSampleImpl* rawsample, \
1360  void** out_exception \
1361  ), \
1362  ( \
1363  liveness_estimator, \
1364  rawsample, \
1365  out_exception \
1366  ), \
1367  ) \
1368  \
1369  decl( \
1370  int32_t, \
1371  LivenessEstimator_estimateLiveness, \
1372  ( \
1373  void* liveness_estimator, \
1374  void** out_exception \
1375  ), \
1376  ( \
1377  liveness_estimator, \
1378  out_exception \
1379  ), \
1380  return ) \
1381  \
1382  \
1383  \
1384  \
1385  decl( \
1386  void, \
1387  TemplatesIndex_getMethodName, \
1388  ( \
1389  void* templates_index, \
1390  void* name_stream, \
1391  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
1392  void** out_exception \
1393  ), \
1394  ( \
1395  templates_index, \
1396  name_stream, \
1397  binary_stream_write_func, \
1398  out_exception \
1399  ), \
1400  ) \
1401  \
1402  decl( \
1403  int64_t, \
1404  TemplatesIndex_size, \
1405  ( \
1406  void* templates_index, \
1407  void** out_exception \
1408  ), \
1409  ( \
1410  templates_index, \
1411  out_exception \
1412  ), \
1413  return ) \
1414  \
1415  decl( \
1416  pbio::facerec::TemplateImpl*, \
1417  TemplatesIndex_at, \
1418  ( \
1419  void* templates_index, \
1420  int64_t index, \
1421  void** out_exception \
1422  ), \
1423  ( \
1424  templates_index, \
1425  index, \
1426  out_exception \
1427  ), \
1428  return ) \
1429  \
1430  decl( \
1431  void, \
1432  TemplatesIndex_reserveSearchMemory, \
1433  ( \
1434  void* templates_index, \
1435  int64_t queries_count, \
1436  void** out_exception \
1437  ), \
1438  ( \
1439  templates_index, \
1440  queries_count, \
1441  out_exception \
1442  ), \
1443  ) \
1444  \
1445  \
1446  \
1447  \
1448  \
1449  \
1450  decl( \
1451  void, \
1452  Template_getMethodName, \
1453  ( \
1454  void* templ, \
1455  void* name_stream, \
1456  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
1457  void** out_exception \
1458  ), \
1459  ( \
1460  templ, \
1461  name_stream, \
1462  binary_stream_write_func, \
1463  out_exception \
1464  ), \
1465  ) \
1466  \
1467  decl( \
1468  void, \
1469  Template_save, \
1470  ( \
1471  void* templ, \
1472  void* binary_stream, \
1473  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
1474  void** out_exception \
1475  ), \
1476  ( \
1477  templ, \
1478  binary_stream, \
1479  binary_stream_write_func, \
1480  out_exception \
1481  ), \
1482  ) \
1483  \
1484  \
1485  \
1486  \
1487  \
1488  decl( \
1489  void, \
1490  Recognizer_getMethodName, \
1491  ( \
1492  void* recognizer, \
1493  void* name_stream, \
1494  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
1495  void** out_exception \
1496  ), \
1497  ( \
1498  recognizer, \
1499  name_stream, \
1500  binary_stream_write_func, \
1501  out_exception \
1502  ), \
1503  ) \
1504  \
1505  decl( \
1506  pbio::facerec::TemplateImpl*, \
1507  Recognizer_processing, \
1508  ( \
1509  void* recognizer, \
1510  const pbio::facerec::RawSampleImpl* raw_sample, \
1511  void** out_exception \
1512  ), \
1513  ( \
1514  recognizer, \
1515  raw_sample, \
1516  out_exception \
1517  ), \
1518  return ) \
1519  \
1520  decl( \
1521  pbio::facerec::TemplateImpl*, \
1522  Recognizer_loadTemplate, \
1523  ( \
1524  void* recognizer, \
1525  void* binary_stream, \
1526  pbio::facerec::capi::binary_stream_read_func_type binary_stream_read_func, \
1527  void** out_exception \
1528  ), \
1529  ( \
1530  recognizer, \
1531  binary_stream, \
1532  binary_stream_read_func, \
1533  out_exception \
1534  ), \
1535  return ) \
1536  \
1537  decl( \
1538  void, \
1539  Recognizer_verifyMatch, /* #old */ \
1540  ( \
1541  void* recognizer, \
1542  const pbio::facerec::TemplateImpl* template1, \
1543  const pbio::facerec::TemplateImpl* template2, \
1544  double* result_distance, \
1545  double* result_fa_r, \
1546  double* result_fr_r, \
1547  void** out_exception \
1548  ), \
1549  ( \
1550  recognizer, \
1551  template1, \
1552  template2, \
1553  result_distance, \
1554  result_fa_r, \
1555  result_fr_r, \
1556  out_exception \
1557  ), \
1558  ) \
1559  \
1560  decl( \
1561  void, \
1562  Recognizer_verifyMatch_v2, \
1563  ( \
1564  void* recognizer, \
1565  const pbio::facerec::TemplateImpl* template1, \
1566  const pbio::facerec::TemplateImpl* template2, \
1567  double* result_distance, \
1568  double* result_fa_r, \
1569  double* result_fr_r, \
1570  double* result_score, \
1571  void** out_exception \
1572  ), \
1573  ( \
1574  recognizer, \
1575  template1, \
1576  template2, \
1577  result_distance, \
1578  result_fa_r, \
1579  result_fr_r, \
1580  result_score, \
1581  out_exception \
1582  ), \
1583  ) \
1584  \
1585  decl( \
1586  pbio::facerec::TemplatesIndexImpl*, \
1587  Recognizer_createIndex, \
1588  ( \
1589  void* recognizer, \
1590  int64_t templates_count, \
1591  pbio::facerec::TemplateImpl const* const* templates, \
1592  int32_t search_threads_count, \
1593  void** out_exception \
1594  ), \
1595  ( \
1596  recognizer, \
1597  templates_count, \
1598  templates, \
1599  search_threads_count, \
1600  out_exception \
1601  ), \
1602  return ) \
1603  \
1604  decl( \
1605  void, \
1606  Recognizer_search, /* #old */ \
1607  ( \
1608  void* recognizer, \
1609  int32_t acceleration, \
1610  int32_t queries_count, \
1611  pbio::facerec::TemplateImpl const* const* query_templates, \
1612  const pbio::facerec::TemplatesIndexImpl* templates_index, \
1613  int64_t k, \
1614  int64_t* result_i_ptr, \
1615  float* result_distance_ptr, \
1616  float* result_far_ptr, \
1617  float* result_frr_ptr, \
1618  void** out_exception \
1619  ), \
1620  ( \
1621  recognizer, \
1622  acceleration, \
1623  queries_count, \
1624  query_templates, \
1625  templates_index, \
1626  k, \
1627  result_i_ptr, \
1628  result_distance_ptr, \
1629  result_far_ptr, \
1630  result_frr_ptr, \
1631  out_exception \
1632  ), \
1633  ) \
1634  \
1635  decl( \
1636  void, \
1637  Recognizer_search_v2, \
1638  ( \
1639  void* recognizer, \
1640  int32_t acceleration, \
1641  int32_t queries_count, \
1642  pbio::facerec::TemplateImpl const* const* query_templates, \
1643  const pbio::facerec::TemplatesIndexImpl* templates_index, \
1644  int64_t k, \
1645  int64_t* result_i_ptr, \
1646  float* result_distance_ptr, \
1647  float* result_far_ptr, \
1648  float* result_frr_ptr, \
1649  float* result_score_ptr, \
1650  void** out_exception \
1651  ), \
1652  ( \
1653  recognizer, \
1654  acceleration, \
1655  queries_count, \
1656  query_templates, \
1657  templates_index, \
1658  k, \
1659  result_i_ptr, \
1660  result_distance_ptr, \
1661  result_far_ptr, \
1662  result_frr_ptr, \
1663  result_score_ptr, \
1664  out_exception \
1665  ), \
1666  ) \
1667  \
1668  decl( \
1669  void, \
1670  Recognizer_getROCCurvePointByDistanceThreshold, /* #old */ \
1671  ( \
1672  void* recognizer, \
1673  double distance_threshold, \
1674  double* result_distance, \
1675  double* result_fa_r, \
1676  double* result_fr_r, \
1677  void** out_exception \
1678  ), \
1679  ( \
1680  recognizer, \
1681  distance_threshold, \
1682  result_distance, \
1683  result_fa_r, \
1684  result_fr_r, \
1685  out_exception \
1686  ), \
1687  ) \
1688  \
1689  decl( \
1690  void, \
1691  Recognizer_getROCCurvePointByDistanceThreshold_v2, \
1692  ( \
1693  void* recognizer, \
1694  double distance_threshold, \
1695  double* result_distance, \
1696  double* result_fa_r, \
1697  double* result_fr_r, \
1698  double* result_score, \
1699  void** out_exception \
1700  ), \
1701  ( \
1702  recognizer, \
1703  distance_threshold, \
1704  result_distance, \
1705  result_fa_r, \
1706  result_fr_r, \
1707  result_score, \
1708  out_exception \
1709  ), \
1710  ) \
1711  \
1712  decl( \
1713  void, \
1714  Recognizer_getROCCurvePointByFAR, /* #old */ \
1715  ( \
1716  void* recognizer, \
1717  double desired_far, \
1718  double* result_distance, \
1719  double* result_fa_r, \
1720  double* result_fr_r, \
1721  void** out_exception \
1722  ), \
1723  ( \
1724  recognizer, \
1725  desired_far, \
1726  result_distance, \
1727  result_fa_r, \
1728  result_fr_r, \
1729  out_exception \
1730  ), \
1731  ) \
1732  \
1733  decl( \
1734  void, \
1735  Recognizer_getROCCurvePointByFAR_v2, \
1736  ( \
1737  void* recognizer, \
1738  double desired_far, \
1739  double* result_distance, \
1740  double* result_fa_r, \
1741  double* result_fr_r, \
1742  double* result_score, \
1743  void** out_exception \
1744  ), \
1745  ( \
1746  recognizer, \
1747  desired_far, \
1748  result_distance, \
1749  result_fa_r, \
1750  result_fr_r, \
1751  result_score, \
1752  out_exception \
1753  ), \
1754  ) \
1755  \
1756  decl( \
1757  void, \
1758  Recognizer_getROCCurvePointByFRR, /* #old */ \
1759  ( \
1760  void* recognizer, \
1761  double desired_frr, \
1762  double* result_distance, \
1763  double* result_fa_r, \
1764  double* result_fr_r, \
1765  void** out_exception \
1766  ), \
1767  ( \
1768  recognizer, \
1769  desired_frr, \
1770  result_distance, \
1771  result_fa_r, \
1772  result_fr_r, \
1773  out_exception \
1774  ), \
1775  ) \
1776  \
1777  decl( \
1778  void, \
1779  Recognizer_getROCCurvePointByFRR_v2, \
1780  ( \
1781  void* recognizer, \
1782  double desired_frr, \
1783  double* result_distance, \
1784  double* result_fa_r, \
1785  double* result_fr_r, \
1786  double* result_score, \
1787  void** out_exception \
1788  ), \
1789  ( \
1790  recognizer, \
1791  desired_frr, \
1792  result_distance, \
1793  result_fa_r, \
1794  result_fr_r, \
1795  result_score, \
1796  out_exception \
1797  ), \
1798  ) \
1799  \
1800  decl( \
1801  void, \
1802  Recognizer_getROCCurvePointByScoreThreshold, \
1803  ( \
1804  void* recognizer, \
1805  double score_threshold, \
1806  double* result_distance, \
1807  double* result_fa_r, \
1808  double* result_fr_r, \
1809  double* result_score, \
1810  void** out_exception \
1811  ), \
1812  ( \
1813  recognizer, \
1814  score_threshold, \
1815  result_distance, \
1816  result_fa_r, \
1817  result_fr_r, \
1818  result_score, \
1819  out_exception \
1820  ), \
1821  ) \
1822  \
1823  decl( \
1824  void, \
1825  Recognizer_chooseRepresentativeTemplatesSet, \
1826  ( \
1827  void* recognizer, \
1828  pbio::facerec::TemplateImpl const* const* const templates, \
1829  int8_t const* const templates_inviolable_flags, \
1830  const int32_t templates_count, \
1831  int32_t* const choosen_set_indexes_out, \
1832  const int32_t set_size, \
1833  void** out_exception \
1834  ), \
1835  ( \
1836  recognizer, \
1837  templates, \
1838  templates_inviolable_flags, \
1839  templates_count, \
1840  choosen_set_indexes_out, \
1841  set_size, \
1842  out_exception \
1843  ), \
1844  ) \
1845  \
1846  \
1847  \
1848  \
1849  \
1850  decl( \
1851  void, \
1852  RawSample_getRectangle, \
1853  ( \
1854  void* rawsample, \
1855  int32_t *x, \
1856  int32_t *y, \
1857  int32_t *width, \
1858  int32_t *height, \
1859  void** out_exception \
1860  ), \
1861  ( \
1862  rawsample, \
1863  x, \
1864  y, \
1865  width, \
1866  height, \
1867  out_exception \
1868  ), \
1869  ) \
1870  \
1871  decl( \
1872  void, \
1873  RawSample_getLandmarks, \
1874  ( \
1875  void* rawsample, \
1876  void* landmarks_floats_vector, \
1877  pbio::facerec::capi::assign_floats_vector_func_type assign_floats_vector_func, \
1878  void** out_exception \
1879  ), \
1880  ( \
1881  rawsample, \
1882  landmarks_floats_vector, \
1883  assign_floats_vector_func, \
1884  out_exception \
1885  ), \
1886  ) \
1887  \
1888  decl( \
1889  void, \
1890  RawSample_getIrisLandmarks, \
1891  ( \
1892  void* rawsample, \
1893  void* landmarks_floats_vector, \
1894  pbio::facerec::capi::assign_floats_vector_func_type assign_floats_vector_func, \
1895  void** out_exception \
1896  ), \
1897  ( \
1898  rawsample, \
1899  landmarks_floats_vector, \
1900  assign_floats_vector_func, \
1901  out_exception \
1902  ), \
1903  ) \
1904  \
1905  decl( \
1906  void, \
1907  RawSample_getLeftEye, \
1908  ( \
1909  void* rawsample, \
1910  float* point_x, \
1911  float* point_y, \
1912  void** out_exception \
1913  ), \
1914  ( \
1915  rawsample, \
1916  point_x, \
1917  point_y, \
1918  out_exception \
1919  ), \
1920  ) \
1921  \
1922  decl( \
1923  void, \
1924  RawSample_getRightEye, \
1925  ( \
1926  void* rawsample, \
1927  float* point_x, \
1928  float* point_y, \
1929  void** out_exception \
1930  ), \
1931  ( \
1932  rawsample, \
1933  point_x, \
1934  point_y, \
1935  out_exception \
1936  ), \
1937  ) \
1938  \
1939  decl( \
1940  void, \
1941  RawSample_getAngles, \
1942  ( \
1943  void* rawsample, \
1944  float* yaw, \
1945  float* pitch, \
1946  float* roll, \
1947  void** out_exception \
1948  ), \
1949  ( \
1950  rawsample, \
1951  yaw, \
1952  pitch, \
1953  roll, \
1954  out_exception \
1955  ), \
1956  ) \
1957  \
1958  decl( \
1959  int32_t, \
1960  RawSample_getID, \
1961  ( \
1962  void* rawsample, \
1963  void** out_exception \
1964  ), \
1965  ( \
1966  rawsample, \
1967  out_exception \
1968  ), \
1969  return ) \
1970  \
1971  decl( \
1972  int32_t, \
1973  RawSample_getType, \
1974  ( \
1975  void* rawsample, \
1976  void** out_exception \
1977  ), \
1978  ( \
1979  rawsample, \
1980  out_exception \
1981  ), \
1982  return ) \
1983  \
1984  decl( \
1985  float, \
1986  RawSample_getScore, \
1987  ( \
1988  void* rawsample, \
1989  void** out_exception \
1990  ), \
1991  ( \
1992  rawsample, \
1993  out_exception \
1994  ), \
1995  return ) \
1996  \
1997  decl( \
1998  float, \
1999  RawSample_getFaceVisibilityScore, \
2000  ( \
2001  void* rawsample, \
2002  void** out_exception \
2003  ), \
2004  ( \
2005  rawsample, \
2006  out_exception \
2007  ), \
2008  return ) \
2009  \
2010  decl( \
2011  void, \
2012  RawSample_getFaceCutRectangle, \
2013  ( \
2014  void* rawsample, \
2015  int32_t cut_type, \
2016  float* corners, \
2017  void** out_exception \
2018  ), \
2019  ( \
2020  rawsample, \
2021  cut_type, \
2022  corners, \
2023  out_exception \
2024  ), \
2025  ) \
2026  \
2027  decl( \
2028  void, \
2029  RawSample_save, \
2030  ( \
2031  void* rawsample, \
2032  void* binary_stream, \
2033  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
2034  int32_t format, \
2035  void** out_exception \
2036  ), \
2037  ( \
2038  rawsample, \
2039  binary_stream, \
2040  binary_stream_write_func, \
2041  format, \
2042  out_exception \
2043  ), \
2044  ) \
2045  \
2046  decl( \
2047  void, \
2048  RawSample_save_without_image, \
2049  ( \
2050  void* rawsample, \
2051  void* binary_stream, \
2052  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
2053  double space_translation_x, \
2054  double space_translation_y, \
2055  double space_scale, \
2056  void** out_exception \
2057  ), \
2058  ( \
2059  rawsample, \
2060  binary_stream, \
2061  binary_stream_write_func, \
2062  space_translation_x, \
2063  space_translation_y, \
2064  space_scale, \
2065  out_exception \
2066  ), \
2067  ) \
2068  \
2069  decl( \
2070  int32_t, \
2071  RawSample_getFrameID, \
2072  ( \
2073  void* rawsample, \
2074  void** out_exception \
2075  ), \
2076  ( \
2077  rawsample, \
2078  out_exception \
2079  ), \
2080  return ) \
2081  \
2082  decl( \
2083  int32_t, \
2084  RawSample_hasOriginalImage, \
2085  ( \
2086  void* rawsample, \
2087  void** out_exception \
2088  ), \
2089  ( \
2090  rawsample, \
2091  out_exception \
2092  ), \
2093  return ) \
2094  \
2095  decl( \
2096  void, \
2097  RawSample_getOriginalImage, \
2098  ( \
2099  void* rawsample, \
2100  int32_t* rows, \
2101  int32_t* cols, \
2102  int32_t* format, \
2103  void const** data, \
2104  void** out_exception \
2105  ), \
2106  ( \
2107  rawsample, \
2108  rows, \
2109  cols, \
2110  format, \
2111  data, \
2112  out_exception \
2113  ), \
2114  ) \
2115  \
2116  decl( \
2117  void, \
2118  RawSample_cutFaceImage, \
2119  ( \
2120  void* rawsample, \
2121  void* binary_stream, \
2122  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
2123  int32_t *width, \
2124  int32_t *height, \
2125  int32_t format, \
2126  int32_t color_model, \
2127  int32_t cut_type, \
2128  void** out_exception \
2129  ), \
2130  ( \
2131  rawsample, \
2132  binary_stream, \
2133  binary_stream_write_func, \
2134  width, \
2135  height, \
2136  format, \
2137  color_model, \
2138  cut_type, \
2139  out_exception \
2140  ), \
2141  ) \
2142  \
2143  decl( \
2144  void, \
2145  RawSample_cutFaceImage_original_raw_image, \
2146  ( \
2147  void* rawsample, \
2148  const void* original_image_data, \
2149  int32_t original_image_width, \
2150  int32_t original_image_height, \
2151  int32_t original_image_format, \
2152  void* binary_stream, \
2153  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
2154  int32_t format, \
2155  int32_t cut_type, \
2156  void** out_exception \
2157  ), \
2158  ( \
2159  rawsample, \
2160  original_image_data, \
2161  original_image_width, \
2162  original_image_height, \
2163  original_image_format, \
2164  binary_stream, \
2165  binary_stream_write_func, \
2166  format, \
2167  cut_type, \
2168  out_exception \
2169  ), \
2170  ) \
2171  \
2172  decl( \
2173  void, \
2174  RawSample_cutFaceImage_original_raw_image_with_crop, \
2175  ( \
2176  void* rawsample, \
2177  const void* original_image_data, \
2178  int32_t original_image_width, \
2179  int32_t original_image_height, \
2180  int32_t original_image_format, \
2181  int32_t original_image_with_crop, \
2182  int32_t original_image_crop_info_offset_x, \
2183  int32_t original_image_crop_info_offset_y, \
2184  int32_t original_image_crop_info_data_image_width, \
2185  int32_t original_image_crop_info_data_image_height, \
2186  void* binary_stream, \
2187  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
2188  int32_t format, \
2189  int32_t cut_type, \
2190  void** out_exception \
2191  ), \
2192  ( \
2193  rawsample, \
2194  original_image_data, \
2195  original_image_width, \
2196  original_image_height, \
2197  original_image_format, \
2198  original_image_with_crop, \
2199  original_image_crop_info_offset_x, \
2200  original_image_crop_info_offset_y, \
2201  original_image_crop_info_data_image_width, \
2202  original_image_crop_info_data_image_height, \
2203  binary_stream, \
2204  binary_stream_write_func, \
2205  format, \
2206  cut_type, \
2207  out_exception \
2208  ), \
2209  ) \
2210  \
2211  decl( \
2212  pbio::facerec::RawSampleImpl*, \
2213  RawSample_downscaleToPreferredSize, \
2214  ( \
2215  void* rawsample, \
2216  void** out_exception \
2217  ), \
2218  ( \
2219  rawsample, \
2220  out_exception \
2221  ), \
2222  return ) \
2223  \
2224  decl( \
2225  HContext*, \
2226  RawSample_toContext, \
2227  ( \
2228  void* rawsample, \
2229  void** out_exception \
2230  ), \
2231  ( \
2232  rawsample, \
2233  out_exception \
2234  ), \
2235  return ) \
2236  \
2237  \
2238  \
2239  \
2240  decl( \
2241  void, \
2242  Capturer_capture_raw_image, \
2243  ( \
2244  void* capturer, \
2245  const void* image_data, \
2246  int32_t image_width, \
2247  int32_t image_height, \
2248  int32_t image_format, \
2249  void* result_pointers_vector, \
2250  pbio::facerec::capi::assign_pointers_vector_func_type assign_pointers_vector_func, \
2251  void** out_exception \
2252  ), \
2253  ( \
2254  capturer, \
2255  image_data, \
2256  image_width, \
2257  image_height, \
2258  image_format, \
2259  result_pointers_vector, \
2260  assign_pointers_vector_func, \
2261  out_exception \
2262  ), \
2263  ) \
2264  \
2265  decl( \
2266  void, \
2267  Capturer_capture_raw_image_with_crop, \
2268  ( \
2269  void* capturer, \
2270  const void* image_data, \
2271  int32_t image_width, \
2272  int32_t image_height, \
2273  int32_t image_format, \
2274  int32_t image_with_crop, \
2275  int32_t image_crop_info_offset_x, \
2276  int32_t image_crop_info_offset_y, \
2277  int32_t image_crop_info_data_image_width, \
2278  int32_t image_crop_info_data_image_height, \
2279  void* result_pointers_vector, \
2280  pbio::facerec::capi::assign_pointers_vector_func_type assign_pointers_vector_func, \
2281  void** out_exception \
2282  ), \
2283  ( \
2284  capturer, \
2285  image_data, \
2286  image_width, \
2287  image_height, \
2288  image_format, \
2289  image_with_crop, \
2290  image_crop_info_offset_x, \
2291  image_crop_info_offset_y, \
2292  image_crop_info_data_image_width, \
2293  image_crop_info_data_image_height, \
2294  result_pointers_vector, \
2295  assign_pointers_vector_func, \
2296  out_exception \
2297  ), \
2298  ) \
2299  \
2300  decl( \
2301  void, \
2302  Capturer_capture_encoded_image, \
2303  ( \
2304  void* capturer, \
2305  const void* data, \
2306  int32_t data_size, \
2307  void* result_pointers_vector, \
2308  pbio::facerec::capi::assign_pointers_vector_func_type assign_pointers_vector_func, \
2309  void** out_exception \
2310  ), \
2311  ( \
2312  capturer, \
2313  data, \
2314  data_size, \
2315  result_pointers_vector, \
2316  assign_pointers_vector_func, \
2317  out_exception \
2318  ), \
2319  ) \
2320  \
2321  decl( \
2322  pbio::facerec::RawSampleImpl*, \
2323  Capturer_manualCapture_raw_image_eyes_points, \
2324  ( \
2325  void* capturer, \
2326  const void* image_data, \
2327  int32_t image_width, \
2328  int32_t image_height, \
2329  int32_t image_format, \
2330  float left_eye_x, \
2331  float left_eye_y, \
2332  float right_eye_x, \
2333  float right_eye_y, \
2334  void** out_exception \
2335  ), \
2336  ( \
2337  capturer, \
2338  image_data, \
2339  image_width, \
2340  image_height, \
2341  image_format, \
2342  left_eye_x, \
2343  left_eye_y, \
2344  right_eye_x, \
2345  right_eye_y, \
2346  out_exception \
2347  ), \
2348  return ) \
2349  \
2350  decl( \
2351  pbio::facerec::RawSampleImpl*, \
2352  Capturer_manualCapture_raw_image_eyes_points_with_crop, \
2353  ( \
2354  void* capturer, \
2355  const void* image_data, \
2356  int32_t image_width, \
2357  int32_t image_height, \
2358  int32_t image_format, \
2359  int32_t image_with_crop, \
2360  int32_t image_crop_info_offset_x, \
2361  int32_t image_crop_info_offset_y, \
2362  int32_t image_crop_info_data_image_width, \
2363  int32_t image_crop_info_data_image_height, \
2364  float left_eye_x, \
2365  float left_eye_y, \
2366  float right_eye_x, \
2367  float right_eye_y, \
2368  void** out_exception \
2369  ), \
2370  ( \
2371  capturer, \
2372  image_data, \
2373  image_width, \
2374  image_height, \
2375  image_format, \
2376  image_with_crop, \
2377  image_crop_info_offset_x, \
2378  image_crop_info_offset_y, \
2379  image_crop_info_data_image_width, \
2380  image_crop_info_data_image_height, \
2381  left_eye_x, \
2382  left_eye_y, \
2383  right_eye_x, \
2384  right_eye_y, \
2385  out_exception \
2386  ), \
2387  return ) \
2388  \
2389  decl( \
2390  pbio::facerec::RawSampleImpl*, \
2391  Capturer_manualCapture_raw_image_points_vector, \
2392  ( \
2393  void* capturer, \
2394  const void* image_data, \
2395  int32_t image_width, \
2396  int32_t image_height, \
2397  int32_t image_format, \
2398  float const* const points, \
2399  const int32_t points_count, \
2400  void** out_exception \
2401  ), \
2402  ( \
2403  capturer, \
2404  image_data, \
2405  image_width, \
2406  image_height, \
2407  image_format, \
2408  points, \
2409  points_count, \
2410  out_exception \
2411  ), \
2412  return ) \
2413  \
2414  decl( \
2415  pbio::facerec::RawSampleImpl*, \
2416  Capturer_manualCapture_raw_image_points_vector_with_crop, \
2417  ( \
2418  void* capturer, \
2419  const void* image_data, \
2420  int32_t image_width, \
2421  int32_t image_height, \
2422  int32_t image_format, \
2423  int32_t image_with_crop, \
2424  int32_t image_crop_info_offset_x, \
2425  int32_t image_crop_info_offset_y, \
2426  int32_t image_crop_info_data_image_width, \
2427  int32_t image_crop_info_data_image_height, \
2428  float const* const points, \
2429  const int32_t points_count, \
2430  void** out_exception \
2431  ), \
2432  ( \
2433  capturer, \
2434  image_data, \
2435  image_width, \
2436  image_height, \
2437  image_format, \
2438  image_with_crop, \
2439  image_crop_info_offset_x, \
2440  image_crop_info_offset_y, \
2441  image_crop_info_data_image_width, \
2442  image_crop_info_data_image_height, \
2443  points, \
2444  points_count, \
2445  out_exception \
2446  ), \
2447  return ) \
2448  \
2449  decl( \
2450  pbio::facerec::RawSampleImpl*, \
2451  Capturer_manualCapture_encoded_image_eyes_points, \
2452  ( \
2453  void* capturer, \
2454  const void* data, \
2455  int32_t data_size, \
2456  float left_eye_x, \
2457  float left_eye_y, \
2458  float right_eye_x, \
2459  float right_eye_y, \
2460  void** out_exception \
2461  ), \
2462  ( \
2463  capturer, \
2464  data, \
2465  data_size, \
2466  left_eye_x, \
2467  left_eye_y, \
2468  right_eye_x, \
2469  right_eye_y, \
2470  out_exception \
2471  ), \
2472  return ) \
2473  \
2474  decl( \
2475  pbio::facerec::RawSampleImpl*, \
2476  Capturer_manualCapture_encoded_image_points_vector, \
2477  ( \
2478  void* capturer, \
2479  const void* data, \
2480  int32_t data_size, \
2481  float const* const points, \
2482  const int32_t points_count, \
2483  void** out_exception \
2484  ), \
2485  ( \
2486  capturer, \
2487  data, \
2488  data_size, \
2489  points, \
2490  points_count, \
2491  out_exception \
2492  ), \
2493  return ) \
2494  \
2495  decl( \
2496  void, \
2497  Capturer_resetHistory, \
2498  ( \
2499  void* capturer, \
2500  void** out_exception \
2501  ), \
2502  ( \
2503  capturer, \
2504  out_exception \
2505  ), \
2506  ) \
2507  \
2508  decl( \
2509  int32_t, \
2510  Capturer_getType, \
2511  ( \
2512  void* capturer, \
2513  void** out_exception \
2514  ), \
2515  ( \
2516  capturer, \
2517  out_exception \
2518  ), \
2519  return ) \
2520  \
2521  decl( \
2522  void, \
2523  Capturer_setParameter, \
2524  ( \
2525  void* capturer, \
2526  const char* param_name, \
2527  double param_value, \
2528  void** out_exception \
2529  ), \
2530  ( \
2531  capturer, \
2532  param_name, \
2533  param_value, \
2534  out_exception \
2535  ), \
2536  ) \
2537  \
2538  \
2539  \
2540  \
2541  \
2542  decl( \
2543  pbio::facerec::StructStorageImpl*, \
2544  FacerecService_getLicenseState, \
2545  ( \
2546  void* service, \
2547  void** out_exception \
2548  ), \
2549  ( \
2550  service, \
2551  out_exception \
2552  ), \
2553  return ) \
2554  \
2555  decl( \
2556  void, \
2557  FacerecService_forceOnlineLicenseUpdate, \
2558  ( \
2559  void* service, \
2560  void** out_exception \
2561  ), \
2562  ( \
2563  service, \
2564  out_exception \
2565  ), \
2566  ) \
2567  \
2568  decl( \
2569  pbio::facerec::QualityEstimatorImpl*, \
2570  FacerecService_createQualityEstimator, \
2571  ( \
2572  void* service, \
2573  const char* ini_file, \
2574  void** out_exception \
2575  ), \
2576  ( \
2577  service, \
2578  ini_file, \
2579  out_exception \
2580  ), \
2581  return ) \
2582  \
2583  decl( \
2584  pbio::facerec::FaceQualityEstimatorImpl*, \
2585  FacerecService_createFaceQualityEstimator, \
2586  ( \
2587  void* service, \
2588  const char* ini_file, \
2589  void** out_exception \
2590  ), \
2591  ( \
2592  service, \
2593  ini_file, \
2594  out_exception \
2595  ), \
2596  return ) \
2597  \
2598  decl( \
2599  pbio::facerec::AgeGenderEstimatorImpl*, \
2600  FacerecService_createAgeGenderEstimator, \
2601  ( \
2602  void* service, \
2603  const char* ini_file, \
2604  void** out_exception \
2605  ), \
2606  ( \
2607  service, \
2608  ini_file, \
2609  out_exception \
2610  ), \
2611  return ) \
2612  \
2613  decl( \
2614  pbio::facerec::LivenessEstimatorImpl*, \
2615  FacerecService_createLivenessEstimator, \
2616  ( \
2617  void* service, \
2618  void** out_exception \
2619  ), \
2620  ( \
2621  service, \
2622  out_exception \
2623  ), \
2624  return ) \
2625  \
2626  decl( \
2627  pbio::facerec::RawSampleImpl*, \
2628  FacerecService_loadRawSample, \
2629  ( \
2630  void* service, \
2631  void* binary_stream, \
2632  ::pbio::facerec::capi::binary_stream_read_func_type binary_stream_read_func, \
2633  void** out_exception \
2634  ), \
2635  ( \
2636  service, \
2637  binary_stream, \
2638  binary_stream_read_func, \
2639  out_exception \
2640  ), \
2641  return ) \
2642  \
2643  decl( \
2644  pbio::facerec::RawSampleImpl*, \
2645  FacerecService_loadRawSampleWithoutImage_raw_image, \
2646  ( \
2647  void* service, \
2648  void* binary_stream, \
2649  ::pbio::facerec::capi::binary_stream_read_func_type binary_stream_read_func, \
2650  const void* image_data, \
2651  int32_t image_width, \
2652  int32_t image_height, \
2653  int32_t image_format, \
2654  int32_t image_with_crop, \
2655  int32_t image_crop_info_offset_x, \
2656  int32_t image_crop_info_offset_y, \
2657  int32_t image_crop_info_data_image_width, \
2658  int32_t image_crop_info_data_image_height, \
2659  double space_translation_x, \
2660  double space_translation_y, \
2661  double space_scale, \
2662  void** out_exception \
2663  ), \
2664  ( \
2665  service, \
2666  binary_stream, \
2667  binary_stream_read_func, \
2668  image_data, \
2669  image_width, \
2670  image_height, \
2671  image_format, \
2672  image_with_crop, \
2673  image_crop_info_offset_x, \
2674  image_crop_info_offset_y, \
2675  image_crop_info_data_image_width, \
2676  image_crop_info_data_image_height, \
2677  space_translation_x, \
2678  space_translation_y, \
2679  space_scale, \
2680  out_exception \
2681  ), \
2682  return ) \
2683  \
2684  decl( \
2685  pbio::facerec::RawSampleImpl*, \
2686  FacerecService_loadRawSampleWithoutImage_encoded_image, \
2687  ( \
2688  void* service, \
2689  void* binary_stream, \
2690  ::pbio::facerec::capi::binary_stream_read_func_type binary_stream_read_func, \
2691  const void* data, \
2692  int32_t data_size, \
2693  double space_translation_x, \
2694  double space_translation_y, \
2695  double space_scale, \
2696  void** out_exception \
2697  ), \
2698  ( \
2699  service, \
2700  binary_stream, \
2701  binary_stream_read_func, \
2702  data, \
2703  data_size, \
2704  space_translation_x, \
2705  space_translation_y, \
2706  space_scale, \
2707  out_exception \
2708  ), \
2709  return ) \
2710  \
2711  decl( \
2712  pbio::facerec::EmotionsEstimatorImpl*, \
2713  FacerecService_createEmotionsEstimator, \
2714  ( \
2715  void* service, \
2716  const char* ini_file, \
2717  void** out_exception \
2718  ), \
2719  ( \
2720  service, \
2721  ini_file, \
2722  out_exception \
2723  ), \
2724  return ) \
2725  \
2726  decl( \
2727  pbio::facerec::CapturerImpl*, \
2728  FacerecService_createCapturerE, \
2729  ( \
2730  void* service, \
2731  const char* ini_file, \
2732  const int32_t overridden_count, \
2733  char const* const* const overridden_keys, \
2734  double const* const overridden_values, \
2735  void** out_exception \
2736  ), \
2737  ( \
2738  service, \
2739  ini_file, \
2740  overridden_count, \
2741  overridden_keys, \
2742  overridden_values, \
2743  out_exception \
2744  ), \
2745  return ) \
2746  \
2747  decl( \
2748  pbio::facerec::CameraCalibratorImpl*, \
2749  FacerecService_createCameraCalibrator, \
2750  ( \
2751  void* service, \
2752  void** out_exception \
2753  ), \
2754  ( \
2755  service, \
2756  out_exception \
2757  ), \
2758  return ) \
2759  \
2760  decl( \
2761  pbio::facerec::RecognizerImpl*, \
2762  FacerecService_createRecognizer2, \
2763  ( \
2764  void* service, \
2765  const char* ini_file, \
2766  const int32_t overridden_count, \
2767  char const* const* const overridden_keys, \
2768  double const* const overridden_values, \
2769  const int32_t processing, \
2770  const int32_t matching, \
2771  const int32_t processing_less_memory_consumption, \
2772  void** out_exception \
2773  ), \
2774  ( \
2775  service, \
2776  ini_file, \
2777  overridden_count, \
2778  overridden_keys, \
2779  overridden_values, \
2780  processing, \
2781  matching, \
2782  processing_less_memory_consumption, \
2783  out_exception \
2784  ), \
2785  return ) \
2786  \
2787  \
2788  decl( \
2789  pbio::facerec::VideoWorkerImpl*, \
2790  FacerecService_createVideoWorker, /* #old */ \
2791  ( \
2792  void* service, \
2793  const ::pbio::facerec::capi::VideoWorker_TrackingCallbackFunc trackingCallback, \
2794  const ::pbio::facerec::capi::VideoWorker_TemplateCreatedCallbackFunc templateCreatedCallback, \
2795  const ::pbio::facerec::capi::VideoWorker_MatchFoundCallbackFunc matchFoundCallback, \
2796  const ::pbio::facerec::capi::VideoWorker_TrackingLostCallbackFunc trackingLostCallback, \
2797  const char* video_worker_ini_file, \
2798  const int32_t vw_overridden_count, \
2799  char const* const* const vw_overridden_keys, \
2800  double const* const vw_overridden_values, \
2801  const char* recognizer_ini_file, \
2802  const int32_t streams_count, \
2803  const int32_t processing_threads_count, \
2804  const int32_t matching_threads_count, \
2805  void** out_exception \
2806  ), \
2807  ( \
2808  service, \
2809  trackingCallback, \
2810  templateCreatedCallback, \
2811  matchFoundCallback, \
2812  trackingLostCallback, \
2813  video_worker_ini_file, \
2814  vw_overridden_count, \
2815  vw_overridden_keys, \
2816  vw_overridden_values, \
2817  recognizer_ini_file, \
2818  streams_count, \
2819  processing_threads_count, \
2820  matching_threads_count, \
2821  out_exception \
2822  ), \
2823  return ) \
2824  \
2825  \
2826  \
2827  decl( \
2828  pbio::facerec::VideoWorkerImpl*, \
2829  FacerecService_createVideoWorker_sti_age_gender_emotions, \
2830  ( \
2831  void* service, \
2832  const ::pbio::facerec::capi::VideoWorker_TrackingCallbackFunc trackingCallback, \
2833  const ::pbio::facerec::capi::VideoWorker_TemplateCreatedCallbackFunc templateCreatedCallback, \
2834  const ::pbio::facerec::capi::VideoWorker_MatchFoundCallbackFunc matchFoundCallback, \
2835  const ::pbio::facerec::capi::VideoWorker_TrackingLostCallbackFunc trackingLostCallback, \
2836  const ::pbio::facerec::capi::VideoWorker_StiPersonOutdatedCallbackFunc stiPersonOutdatedCallback, \
2837  const char* video_worker_ini_file, \
2838  const int32_t vw_overridden_count, \
2839  char const* const* const vw_overridden_keys, \
2840  double const* const vw_overridden_values, \
2841  const char* recognizer_ini_file, \
2842  const int32_t rec_overridden_count, \
2843  char const* const* const rec_overridden_keys, \
2844  double const* const rec_overridden_values, \
2845  const int32_t streams_count, \
2846  const int32_t processing_threads_count, \
2847  const int32_t matching_threads_count, \
2848  const uint32_t short_time_identification_enabled, \
2849  const float short_time_identification_distance_threshold, \
2850  const float short_time_identification_outdate_time_seconds, \
2851  const int32_t age_gender_threads_count, \
2852  const int32_t emotions_threads_count, \
2853  void** out_exception \
2854  ), \
2855  ( \
2856  service, \
2857  trackingCallback, \
2858  templateCreatedCallback, \
2859  matchFoundCallback, \
2860  trackingLostCallback, \
2861  stiPersonOutdatedCallback, \
2862  video_worker_ini_file, \
2863  vw_overridden_count, \
2864  vw_overridden_keys, \
2865  vw_overridden_values, \
2866  recognizer_ini_file, \
2867  rec_overridden_count, \
2868  rec_overridden_keys, \
2869  rec_overridden_values, \
2870  streams_count, \
2871  processing_threads_count, \
2872  matching_threads_count, \
2873  short_time_identification_enabled, \
2874  short_time_identification_distance_threshold, \
2875  short_time_identification_outdate_time_seconds, \
2876  age_gender_threads_count, \
2877  emotions_threads_count, \
2878  out_exception \
2879  ), \
2880  return ) \
2881  \
2882  \
2883  \
2884  decl( \
2885  pbio::facerec::DepthLivenessEstimatorImpl*, \
2886  FacerecService_createDepthLivenessEstimator, \
2887  ( \
2888  void* service, \
2889  const char* ini_file, \
2890  void** out_exception \
2891  ), \
2892  ( \
2893  service, \
2894  ini_file, \
2895  out_exception \
2896  ), \
2897  return ) \
2898  \
2899  decl( \
2900  pbio::facerec::DepthLivenessEstimatorImpl*, \
2901  FacerecService_createDepthLivenessEstimatorE, \
2902  ( \
2903  void* service, \
2904  const char* ini_file, \
2905  const int32_t overridden_count, \
2906  char const* const* const overridden_keys, \
2907  double const* const overridden_values, \
2908  void** out_exception \
2909  ), \
2910  ( \
2911  service, \
2912  ini_file, \
2913  overridden_count, \
2914  overridden_keys, \
2915  overridden_values, \
2916  out_exception \
2917  ), \
2918  return ) \
2919  \
2920  decl( \
2921  pbio::facerec::IRLivenessEstimatorImpl*, \
2922  FacerecService_createIRLivenessEstimatorE, \
2923  ( \
2924  void* service, \
2925  const char* ini_file, \
2926  const int32_t overridden_count, \
2927  char const* const* const overridden_keys, \
2928  double const* const overridden_values, \
2929  void** out_exception \
2930  ), \
2931  ( \
2932  service, \
2933  ini_file, \
2934  overridden_count, \
2935  overridden_keys, \
2936  overridden_values, \
2937  out_exception \
2938  ), \
2939  return ) \
2940  \
2941  decl( \
2942  pbio::facerec::Liveness2DEstimatorImpl*, \
2943  FacerecService_createLiveness2DEstimatorE, \
2944  ( \
2945  void* service, \
2946  const char* ini_file, \
2947  const int32_t overridden_count, \
2948  char const* const* const overridden_keys, \
2949  double const* const overridden_values, \
2950  void** out_exception \
2951  ), \
2952  ( \
2953  service, \
2954  ini_file, \
2955  overridden_count, \
2956  overridden_keys, \
2957  overridden_values, \
2958  out_exception \
2959  ), \
2960  return ) \
2961  \
2962  decl( \
2963  pbio::facerec::FaceAttributesEstimatorImpl*, \
2964  FacerecService_createFaceAttributesEstimator, \
2965  ( \
2966  void* service, \
2967  const char* ini_file, \
2968  const int32_t overridden_count, \
2969  char const* const* const overridden_keys, \
2970  double const* const overridden_values, \
2971  void** out_exception \
2972  ), \
2973  ( \
2974  service, \
2975  ini_file, \
2976  overridden_count, \
2977  overridden_keys, \
2978  overridden_values, \
2979  out_exception \
2980  ), \
2981  return ) \
2982  \
2983  decl( \
2984  void, \
2985  get_version, \
2986  ( \
2987  void* version_stream, \
2988  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
2989  void** out_exception \
2990  ), \
2991  ( \
2992  version_stream, \
2993  binary_stream_write_func, \
2994  out_exception \
2995  ), \
2996  ) \
2997  \
2998  decl( \
2999  void*, \
3000  FacerecService_constructor2, \
3001  ( \
3002  char const* conf_dir, \
3003  char const* license_dir, \
3004  char const* dll_path, \
3005  void** out_exception \
3006  ), \
3007  ( \
3008  conf_dir, \
3009  license_dir, \
3010  dll_path, \
3011  out_exception \
3012  ), \
3013  return ) \
3014  \
3015  decl( \
3016  void*, \
3017  FacerecService_constructor3, \
3018  ( \
3019  void* ae_ptr, \
3020  char const* conf_dir, \
3021  char const* license_dir, \
3022  char const* dll_path, \
3023  void** out_exception \
3024  ), \
3025  ( \
3026  ae_ptr, \
3027  conf_dir, \
3028  license_dir, \
3029  dll_path, \
3030  out_exception \
3031  ), \
3032  return ) \
3033  \
3034  decl( \
3035  void*, \
3036  FacerecService_constructor4, \
3037  ( \
3038  char const* conf_dir, \
3039  char const* license_body, \
3040  char const* dll_path, \
3041  void** out_exception \
3042  ), \
3043  ( \
3044  conf_dir, \
3045  license_body, \
3046  dll_path, \
3047  out_exception \
3048  ), \
3049  return ) \
3050  \
3051  decl( \
3052  void*, \
3053  FacerecService_constructor5, \
3054  ( \
3055  void* ae_ptr, \
3056  char const* conf_dir, \
3057  char const* license_body, \
3058  char const* dll_path, \
3059  void** out_exception \
3060  ), \
3061  ( \
3062  ae_ptr, \
3063  conf_dir, \
3064  license_body, \
3065  dll_path, \
3066  out_exception \
3067  ), \
3068  return ) \
3069  \
3070  decl( \
3071  void, \
3072  FacerecService_toggleAlgorithmsCacheKepp, \
3073  ( \
3074  int32_t cache_keep_enabled, \
3075  void** out_exception \
3076  ), \
3077  ( \
3078  cache_keep_enabled, \
3079  out_exception \
3080  ), \
3081  ) \
3082  \
3083  \
3084  \
3085  \
3086  \
3087  decl( \
3088  void*, \
3089  InternalImageBuffer_constructor, \
3090  ( \
3091  int32_t width, \
3092  int32_t height, \
3093  int32_t format, \
3094  int32_t* out_data_size, \
3095  void** out_data_ptr, \
3096  void** out_imagetptr_ptr, \
3097  void** out_exception \
3098  ), \
3099  ( \
3100  width, \
3101  height, \
3102  format, \
3103  out_data_size, \
3104  out_data_ptr, \
3105  out_imagetptr_ptr, \
3106  out_exception \
3107  ), \
3108  return ) \
3109  \
3110  \
3111  decl( \
3112  void*, \
3113  InternalImageBuffer_constructor_from_android_image, \
3114  ( \
3115  void* jni_env_ptr, \
3116  void* jobject_image_ptr, \
3117  int32_t* out_width, \
3118  int32_t* out_height, \
3119  int32_t* out_format, \
3120  int32_t* out_data_size, \
3121  void** out_data_ptr, \
3122  void** out_imagetptr_ptr, \
3123  void** out_exception \
3124  ), \
3125  ( \
3126  jni_env_ptr, \
3127  jobject_image_ptr, \
3128  out_width, \
3129  out_height, \
3130  out_format, \
3131  out_data_size, \
3132  out_data_ptr, \
3133  out_imagetptr_ptr, \
3134  out_exception \
3135  ), \
3136  return ) \
3137  \
3138  \
3139  \
3140  \
3141  decl( \
3142  void, \
3143  RawImage_convertYUV2ARGB, \
3144  ( \
3145  const void* image_data, \
3146  int32_t image_width, \
3147  int32_t image_height, \
3148  int32_t image_format, \
3149  int32_t image_with_crop, \
3150  int32_t image_crop_info_offset_x, \
3151  int32_t image_crop_info_offset_y, \
3152  int32_t image_crop_info_data_image_width, \
3153  int32_t image_crop_info_data_image_height, \
3154  int32_t downscale_x2, \
3155  void* result_buffer, \
3156  void** out_exception \
3157  ), \
3158  ( \
3159  image_data, \
3160  image_width, \
3161  image_height, \
3162  image_format, \
3163  image_with_crop, \
3164  image_crop_info_offset_x, \
3165  image_crop_info_offset_y, \
3166  image_crop_info_data_image_width, \
3167  image_crop_info_data_image_height, \
3168  downscale_x2, \
3169  result_buffer, \
3170  out_exception \
3171  ), \
3172  ) \
3173  \
3174  \
3175  \
3176  \
3177  decl( \
3178  void, \
3179  RawImage_convertYUV2RGB, \
3180  ( \
3181  const void* image_data, \
3182  int32_t image_width, \
3183  int32_t image_height, \
3184  int32_t image_format, \
3185  int32_t image_with_crop, \
3186  int32_t image_crop_info_offset_x, \
3187  int32_t image_crop_info_offset_y, \
3188  int32_t image_crop_info_data_image_width, \
3189  int32_t image_crop_info_data_image_height, \
3190  int32_t downscale_x2, \
3191  int32_t base_angle, \
3192  void* result_buffer, \
3193  void** out_exception \
3194  ), \
3195  ( \
3196  image_data, \
3197  image_width, \
3198  image_height, \
3199  image_format, \
3200  image_with_crop, \
3201  image_crop_info_offset_x, \
3202  image_crop_info_offset_y, \
3203  image_crop_info_data_image_width, \
3204  image_crop_info_data_image_height, \
3205  downscale_x2, \
3206  base_angle, \
3207  result_buffer, \
3208  out_exception \
3209  ), \
3210  ) \
3211  \
3212  \
3213  \
3214  \
3215  decl( \
3216  uint32_t, \
3217  apiException_code, \
3218  ( void* exception ), \
3219  ( exception ), \
3220  return ) \
3221  \
3222  decl( \
3223  char const*, \
3224  apiException_what, \
3225  ( void* exception ), \
3226  ( exception ), \
3227  return ) \
3228  \
3229  decl( \
3230  void, \
3231  apiObject_destructor, \
3232  (void* object), \
3233  (object), \
3234  ) \
3235  \
3236  \
3237  decl( \
3238  HPBlock*, \
3239  FacerecService_ProcessingBlock_createProcessingBlock, \
3240  ( \
3241  void* service, \
3242  const HContext* block_ptr, \
3243  void** out_exception \
3244  ), \
3245  ( \
3246  service, \
3247  block_ptr, \
3248  out_exception \
3249  ), \
3250  return )
3251 
3252 // decl suppose to be a macro: decl(rtype, name, typed_args, args, return)
3253 #define __TDV_METASDK_FLIST(decl) \
3254  \
3255  decl( \
3256  void, \
3257  TDVProcessingBlock_processContext, \
3258  ( \
3259  HPBlock* block_ptr, \
3260  HContext* ctx_ptr, \
3261  ContextEH** out_exception \
3262  ), \
3263  ( \
3264  block_ptr, \
3265  ctx_ptr, \
3266  out_exception \
3267  ), \
3268  return ) \
3269  \
3270  \
3271  decl( \
3272  void, \
3273  TDVProcessingBlock_destroyBlock, \
3274  ( \
3275  HPBlock* block_ptr, \
3276  ContextEH** out_exception \
3277  ), \
3278  ( \
3279  block_ptr, \
3280  out_exception \
3281  ), \
3282  return ) \
3283  \
3284  decl( \
3285  HContext*, \
3286  TDVContext_create, \
3287  ( \
3288  ContextEH** errorHandler \
3289  ), \
3290  ( \
3291  errorHandler \
3292  ), \
3293  return ) \
3294  \
3295  \
3296  decl( \
3297  void, \
3298  TDVContext_destroy, \
3299  ( \
3300  HContext* ctx, \
3301  ContextEH** errorHandler \
3302  ), \
3303  ( \
3304  ctx, \
3305  errorHandler \
3306  ), \
3307  return ) \
3308  \
3309  \
3310  decl( \
3311  HContext*, \
3312  TDVContext_getByIndex, \
3313  ( \
3314  HContext* ctx, \
3315  int key, \
3316  ContextEH** errorHandler \
3317  ), \
3318  ( \
3319  ctx, \
3320  key, \
3321  errorHandler \
3322  ), \
3323  return ) \
3324  \
3325  \
3326  decl( \
3327  HContext*, \
3328  TDVContext_getByKey, \
3329  ( \
3330  HContext* ctx, \
3331  const char* key, \
3332  ContextEH** errorHandler \
3333  ), \
3334  ( \
3335  ctx, \
3336  key, \
3337  errorHandler \
3338  ), \
3339  return ) \
3340  \
3341  \
3342  decl( \
3343  HContext*, \
3344  TDVContext_getOrInsertByKey, \
3345  ( \
3346  HContext* ctx, \
3347  const char* key, \
3348  ContextEH** errorHandler \
3349  ), \
3350  ( \
3351  ctx, \
3352  key, \
3353  errorHandler \
3354  ), \
3355  return ) \
3356  \
3357  \
3358  decl( \
3359  void, \
3360  TDVContext_copy, \
3361  ( \
3362  HContext* src, \
3363  HContext* dst, \
3364  ContextEH** errorHandler \
3365  ), \
3366  ( \
3367  src, \
3368  dst, \
3369  errorHandler \
3370  ), \
3371  return ) \
3372  \
3373  \
3374  decl( \
3375  HContext*, \
3376  TDVContext_clone, \
3377  ( \
3378  HContext* ctx, \
3379  ContextEH** errorHandler \
3380  ), \
3381  ( \
3382  ctx, \
3383  errorHandler \
3384  ), \
3385  return ) \
3386  \
3387  \
3388  decl( \
3389  HContext*, \
3390  TDVContext_clear, \
3391  ( \
3392  HContext* ctx, \
3393  ContextEH** errorHandler \
3394  ), \
3395  ( \
3396  ctx, \
3397  errorHandler \
3398  ), \
3399  return ) \
3400  \
3401  \
3402  decl( \
3403  void, \
3404  TDVContext_putStr, \
3405  ( \
3406  HContext* ctx, \
3407  const char* str, \
3408  ContextEH** errorHandler \
3409  ), \
3410  ( \
3411  ctx, \
3412  str, \
3413  errorHandler \
3414  ), \
3415  return ) \
3416  \
3417  \
3418  decl( \
3419  void, \
3420  TDVContext_putLong, \
3421  ( \
3422  HContext* ctx, \
3423  long val, \
3424  ContextEH** errorHandler \
3425  ), \
3426  ( \
3427  ctx, \
3428  val, \
3429  errorHandler \
3430  ), \
3431  return ) \
3432  \
3433  \
3434  decl( \
3435  void, \
3436  TDVContext_putDouble, \
3437  ( \
3438  HContext* ctx, \
3439  double val, \
3440  ContextEH** errorHandler \
3441  ), \
3442  ( \
3443  ctx, \
3444  val, \
3445  errorHandler \
3446  ), \
3447  return ) \
3448  \
3449  \
3450  decl( \
3451  void, \
3452  TDVContext_putBool, \
3453  ( \
3454  HContext* ctx, \
3455  bool val, \
3456  ContextEH** errorHandler \
3457  ), \
3458  ( \
3459  ctx, \
3460  val, \
3461  errorHandler \
3462  ), \
3463  return ) \
3464  \
3465  \
3466  decl( \
3467  unsigned char*, \
3468  TDVContext_allocDataPtr, \
3469  ( \
3470  HContext* ctx, \
3471  unsigned long size, \
3472  ContextEH** errorHandler \
3473  ), \
3474  ( \
3475  ctx, \
3476  size, \
3477  errorHandler \
3478  ), \
3479  return ) \
3480  \
3481  \
3482  decl( \
3483  unsigned char*, \
3484  TDVContext_putDataPtr, \
3485  ( \
3486  HContext* ctx, \
3487  unsigned char* val, \
3488  unsigned long copy_sz, \
3489  ContextEH** errorHandler \
3490  ), \
3491  ( \
3492  ctx, \
3493  val, \
3494  copy_sz, \
3495  errorHandler \
3496  ), \
3497  return ) \
3498  \
3499  \
3500  decl( \
3501  unsigned char*, \
3502  TDVContext_putConstDataPtr, \
3503  ( \
3504  HContext* ctx, \
3505  const unsigned char* val, \
3506  unsigned long copy_sz, \
3507  ContextEH** errorHandler \
3508  ), \
3509  ( \
3510  ctx, \
3511  val, \
3512  copy_sz, \
3513  errorHandler \
3514  ), \
3515  return ) \
3516  \
3517  \
3518  decl( \
3519  void, \
3520  TDVContext_pushBack, \
3521  ( \
3522  HContext* ctx, \
3523  void* data, \
3524  bool copy, \
3525  ContextEH** errorHandler \
3526  ), \
3527  ( \
3528  ctx, \
3529  data, \
3530  copy, \
3531  errorHandler \
3532  ), \
3533  return ) \
3534  \
3535  \
3536  decl( \
3537  unsigned long, \
3538  TDVContext_getLength, \
3539  ( \
3540  HContext* ctx, \
3541  ContextEH** errorHandler \
3542  ), \
3543  ( \
3544  ctx, \
3545  errorHandler \
3546  ), \
3547  return ) \
3548  \
3549  \
3550  decl( \
3551  char**, \
3552  TDVContext_getKeys, \
3553  ( \
3554  HContext* ctx, \
3555  unsigned long length, \
3556  ContextEH** errorHandler \
3557  ), \
3558  ( \
3559  ctx, \
3560  length, \
3561  errorHandler \
3562  ), \
3563  return ) \
3564  \
3565  \
3566  decl( \
3567  bool, \
3568  TDVContext_isNone, \
3569  ( \
3570  HContext* ctx, \
3571  ContextEH** errorHandler \
3572  ), \
3573  ( \
3574  ctx, \
3575  errorHandler \
3576  ), \
3577  return ) \
3578  \
3579  \
3580  decl( \
3581  bool, \
3582  TDVContext_isArray, \
3583  ( \
3584  HContext* ctx, \
3585  ContextEH** errorHandler \
3586  ), \
3587  ( \
3588  ctx, \
3589  errorHandler \
3590  ), \
3591  return ) \
3592  \
3593  \
3594  decl( \
3595  bool, \
3596  TDVContext_isObject, \
3597  ( \
3598  HContext* ctx, \
3599  ContextEH** errorHandler \
3600  ), \
3601  ( \
3602  ctx, \
3603  errorHandler \
3604  ), \
3605  return ) \
3606  \
3607  \
3608  decl( \
3609  bool, \
3610  TDVContext_isBool, \
3611  ( \
3612  HContext* ctx, \
3613  ContextEH** errorHandler \
3614  ), \
3615  ( \
3616  ctx, \
3617  errorHandler \
3618  ), \
3619  return ) \
3620  \
3621  \
3622  decl( \
3623  bool, \
3624  TDVContext_isLong, \
3625  ( \
3626  HContext* ctx, \
3627  ContextEH** errorHandler \
3628  ), \
3629  ( \
3630  ctx, \
3631  errorHandler \
3632  ), \
3633  return ) \
3634  \
3635  \
3636  decl( \
3637  bool, \
3638  TDVContext_isDouble, \
3639  ( \
3640  HContext* ctx, \
3641  ContextEH** errorHandler \
3642  ), \
3643  ( \
3644  ctx, \
3645  errorHandler \
3646  ), \
3647  return ) \
3648  \
3649  \
3650  decl( \
3651  bool, \
3652  TDVContext_isString, \
3653  ( \
3654  HContext* ctx, \
3655  ContextEH** errorHandler \
3656  ), \
3657  ( \
3658  ctx, \
3659  errorHandler \
3660  ), \
3661  return ) \
3662  \
3663  \
3664  decl( \
3665  bool, \
3666  TDVContext_isDataPtr, \
3667  ( \
3668  HContext* ctx, \
3669  ContextEH** errorHandler \
3670  ), \
3671  ( \
3672  ctx, \
3673  errorHandler \
3674  ), \
3675  return ) \
3676  \
3677  \
3678  decl( \
3679  const char*, \
3680  TDVContext_getStr, \
3681  ( \
3682  HContext* ctx, \
3683  char* buff, \
3684  ContextEH** errorHandler \
3685  ), \
3686  ( \
3687  ctx, \
3688  buff, \
3689  errorHandler \
3690  ), \
3691  return ) \
3692  \
3693  \
3694  decl( \
3695  unsigned long, \
3696  TDVContext_getStrSize, \
3697  ( \
3698  HContext* ctx, \
3699  ContextEH** errorHandler \
3700  ), \
3701  ( \
3702  ctx, \
3703  errorHandler \
3704  ), \
3705  return ) \
3706  \
3707  \
3708  decl( \
3709  void, \
3710  TDVContext_freePtr, \
3711  ( \
3712  void* ptr \
3713  ), \
3714  ( \
3715  ptr \
3716  ), \
3717  return ) \
3718  \
3719  \
3720  decl( \
3721  long, \
3722  TDVContext_getLong, \
3723  ( \
3724  HContext* ctx, \
3725  ContextEH** errorHandler \
3726  ), \
3727  ( \
3728  ctx, \
3729  errorHandler \
3730  ), \
3731  return ) \
3732  \
3733  \
3734  decl( \
3735  double, \
3736  TDVContext_getDouble, \
3737  ( \
3738  HContext* ctx, \
3739  ContextEH** errorHandler \
3740  ), \
3741  ( \
3742  ctx, \
3743  errorHandler \
3744  ), \
3745  return ) \
3746  \
3747  \
3748  decl( \
3749  bool, \
3750  TDVContext_getBool, \
3751  ( \
3752  HContext* ctx, \
3753  ContextEH** errorHandler \
3754  ), \
3755  ( \
3756  ctx, \
3757  errorHandler \
3758  ), \
3759  return ) \
3760  \
3761  \
3762  decl( \
3763  unsigned char*, \
3764  TDVContext_getDataPtr, \
3765  ( \
3766  HContext* ctx, \
3767  ContextEH** errorHandler \
3768  ), \
3769  ( \
3770  ctx, \
3771  errorHandler \
3772  ), \
3773  return ) \
3774  \
3775  \
3776  decl( \
3777  const char*, \
3778  TDVException_getMessage, \
3779  ( \
3780  ContextEH* errorHandler \
3781  ), \
3782  ( \
3783  errorHandler \
3784  ), \
3785  return ) \
3786  \
3787  \
3788  decl( \
3789  unsigned int, \
3790  TDVException_getErrorCode, \
3791  ( \
3792  ContextEH* errorHandler \
3793  ), \
3794  ( \
3795  errorHandler \
3796  ), \
3797  return ) \
3798  \
3799  \
3800  decl( \
3801  void, \
3802  TDVException_deleteException, \
3803  ( \
3804  ContextEH* errorHandler \
3805  ), \
3806  ( \
3807  errorHandler \
3808  ), \
3809  return )
3810 
3811 #endif // __pbio__imp_exp_macro_1bcdd890e87a41b786dfa83f9c4236ad