3DiVi Face SDK  3.25.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  decl( \
1486  void, \
1487  ContextTemplate_getMethodName, \
1488  ( \
1489  void* templ, \
1490  void* name_stream, \
1491  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
1492  void** out_exception \
1493  ), \
1494  ( \
1495  templ, \
1496  name_stream, \
1497  binary_stream_write_func, \
1498  out_exception \
1499  ), \
1500  ) \
1501  \
1502  \
1503  decl( \
1504  void, \
1505  ContextTemplate_save, \
1506  ( \
1507  void* templ, \
1508  void* binary_stream, \
1509  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
1510  void** out_exception \
1511  ), \
1512  ( \
1513  templ, \
1514  binary_stream, \
1515  binary_stream_write_func, \
1516  out_exception \
1517  ), \
1518  ) \
1519  \
1520  \
1521  decl( \
1522  void*, \
1523  ContextTemplate_loadTemplate, \
1524  ( \
1525  void* binaryStream, \
1526  pbio::facerec::capi::binary_stream_read_func_type binaryStreamReadFunction, \
1527  void** outException \
1528  ), \
1529  ( \
1530  binaryStream, \
1531  binaryStreamReadFunction, \
1532  outException \
1533  ), \
1534  return ) \
1535  \
1536  \
1537  decl( \
1538  int32_t, \
1539  ContextTemplate_size, \
1540  ( \
1541  void* templ, \
1542  void** outException \
1543  ), \
1544  ( \
1545  templ, \
1546  outException \
1547  ), \
1548  return ) \
1549  \
1550  \
1551  decl( \
1552  void*, \
1553  ContextTemplate_convert, \
1554  ( \
1555  void* context, \
1556  void** outException \
1557  ), \
1558  ( \
1559  context, \
1560  outException \
1561  ), \
1562  return ) \
1563  \
1564  \
1565  decl( \
1566  void, \
1567  ContextTemplate_destructor, \
1568  ( \
1569  void* implementation \
1570  ), \
1571  ( \
1572  implementation \
1573  ), \
1574  return ) \
1575  \
1576  \
1577  \
1578  \
1579  \
1580  decl( \
1581  void, \
1582  Recognizer_getMethodName, \
1583  ( \
1584  void* recognizer, \
1585  void* name_stream, \
1586  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
1587  void** out_exception \
1588  ), \
1589  ( \
1590  recognizer, \
1591  name_stream, \
1592  binary_stream_write_func, \
1593  out_exception \
1594  ), \
1595  ) \
1596  \
1597  decl( \
1598  pbio::facerec::TemplateImpl*, \
1599  Recognizer_processing, \
1600  ( \
1601  void* recognizer, \
1602  const pbio::facerec::RawSampleImpl* raw_sample, \
1603  void** out_exception \
1604  ), \
1605  ( \
1606  recognizer, \
1607  raw_sample, \
1608  out_exception \
1609  ), \
1610  return ) \
1611  \
1612  decl( \
1613  pbio::facerec::TemplateImpl*, \
1614  Recognizer_loadTemplate, \
1615  ( \
1616  void* recognizer, \
1617  void* binary_stream, \
1618  pbio::facerec::capi::binary_stream_read_func_type binary_stream_read_func, \
1619  void** out_exception \
1620  ), \
1621  ( \
1622  recognizer, \
1623  binary_stream, \
1624  binary_stream_read_func, \
1625  out_exception \
1626  ), \
1627  return ) \
1628  \
1629  decl( \
1630  void, \
1631  Recognizer_verifyMatch, /* #old */ \
1632  ( \
1633  void* recognizer, \
1634  const pbio::facerec::TemplateImpl* template1, \
1635  const pbio::facerec::TemplateImpl* template2, \
1636  double* result_distance, \
1637  double* result_fa_r, \
1638  double* result_fr_r, \
1639  void** out_exception \
1640  ), \
1641  ( \
1642  recognizer, \
1643  template1, \
1644  template2, \
1645  result_distance, \
1646  result_fa_r, \
1647  result_fr_r, \
1648  out_exception \
1649  ), \
1650  ) \
1651  \
1652  decl( \
1653  void, \
1654  Recognizer_verifyMatch_v2, \
1655  ( \
1656  void* recognizer, \
1657  const pbio::facerec::TemplateImpl* template1, \
1658  const pbio::facerec::TemplateImpl* template2, \
1659  double* result_distance, \
1660  double* result_fa_r, \
1661  double* result_fr_r, \
1662  double* result_score, \
1663  void** out_exception \
1664  ), \
1665  ( \
1666  recognizer, \
1667  template1, \
1668  template2, \
1669  result_distance, \
1670  result_fa_r, \
1671  result_fr_r, \
1672  result_score, \
1673  out_exception \
1674  ), \
1675  ) \
1676  \
1677  decl( \
1678  pbio::facerec::TemplatesIndexImpl*, \
1679  Recognizer_createIndex, \
1680  ( \
1681  void* recognizer, \
1682  int64_t templates_count, \
1683  pbio::facerec::TemplateImpl const* const* templates, \
1684  int32_t search_threads_count, \
1685  void** out_exception \
1686  ), \
1687  ( \
1688  recognizer, \
1689  templates_count, \
1690  templates, \
1691  search_threads_count, \
1692  out_exception \
1693  ), \
1694  return ) \
1695  \
1696  decl( \
1697  pbio::facerec::TemplatesIndexImpl*, \
1698  Recognizer_createResizableIndex, \
1699  ( \
1700  void* recognizer, \
1701  int64_t templates_count, \
1702  int32_t search_threads_count, \
1703  void** out_exception \
1704  ), \
1705  ( \
1706  recognizer, \
1707  templates_count, \
1708  search_threads_count, \
1709  out_exception \
1710  ), \
1711  return ) \
1712  \
1713  decl( \
1714  void, \
1715  Recognizer_search, /* #old */ \
1716  ( \
1717  void* recognizer, \
1718  int32_t acceleration, \
1719  int32_t queries_count, \
1720  pbio::facerec::TemplateImpl const* const* query_templates, \
1721  const pbio::facerec::TemplatesIndexImpl* templates_index, \
1722  int64_t k, \
1723  int64_t* result_i_ptr, \
1724  float* result_distance_ptr, \
1725  float* result_far_ptr, \
1726  float* result_frr_ptr, \
1727  void** out_exception \
1728  ), \
1729  ( \
1730  recognizer, \
1731  acceleration, \
1732  queries_count, \
1733  query_templates, \
1734  templates_index, \
1735  k, \
1736  result_i_ptr, \
1737  result_distance_ptr, \
1738  result_far_ptr, \
1739  result_frr_ptr, \
1740  out_exception \
1741  ), \
1742  ) \
1743  \
1744  decl( \
1745  void, \
1746  Recognizer_search_v2, \
1747  ( \
1748  void* recognizer, \
1749  int32_t acceleration, \
1750  int32_t queries_count, \
1751  pbio::facerec::TemplateImpl const* const* query_templates, \
1752  const pbio::facerec::TemplatesIndexImpl* templates_index, \
1753  int64_t k, \
1754  int64_t* result_i_ptr, \
1755  float* result_distance_ptr, \
1756  float* result_far_ptr, \
1757  float* result_frr_ptr, \
1758  float* result_score_ptr, \
1759  void** out_exception \
1760  ), \
1761  ( \
1762  recognizer, \
1763  acceleration, \
1764  queries_count, \
1765  query_templates, \
1766  templates_index, \
1767  k, \
1768  result_i_ptr, \
1769  result_distance_ptr, \
1770  result_far_ptr, \
1771  result_frr_ptr, \
1772  result_score_ptr, \
1773  out_exception \
1774  ), \
1775  ) \
1776  \
1777  decl( \
1778  void, \
1779  Recognizer_getROCCurvePointByDistanceThreshold, /* #old */ \
1780  ( \
1781  void* recognizer, \
1782  double distance_threshold, \
1783  double* result_distance, \
1784  double* result_fa_r, \
1785  double* result_fr_r, \
1786  void** out_exception \
1787  ), \
1788  ( \
1789  recognizer, \
1790  distance_threshold, \
1791  result_distance, \
1792  result_fa_r, \
1793  result_fr_r, \
1794  out_exception \
1795  ), \
1796  ) \
1797  \
1798  decl( \
1799  void, \
1800  Recognizer_getROCCurvePointByDistanceThreshold_v2, \
1801  ( \
1802  void* recognizer, \
1803  double distance_threshold, \
1804  double* result_distance, \
1805  double* result_fa_r, \
1806  double* result_fr_r, \
1807  double* result_score, \
1808  void** out_exception \
1809  ), \
1810  ( \
1811  recognizer, \
1812  distance_threshold, \
1813  result_distance, \
1814  result_fa_r, \
1815  result_fr_r, \
1816  result_score, \
1817  out_exception \
1818  ), \
1819  ) \
1820  \
1821  decl( \
1822  void, \
1823  Recognizer_getROCCurvePointByFAR, /* #old */ \
1824  ( \
1825  void* recognizer, \
1826  double desired_far, \
1827  double* result_distance, \
1828  double* result_fa_r, \
1829  double* result_fr_r, \
1830  void** out_exception \
1831  ), \
1832  ( \
1833  recognizer, \
1834  desired_far, \
1835  result_distance, \
1836  result_fa_r, \
1837  result_fr_r, \
1838  out_exception \
1839  ), \
1840  ) \
1841  \
1842  decl( \
1843  void, \
1844  Recognizer_getROCCurvePointByFAR_v2, \
1845  ( \
1846  void* recognizer, \
1847  double desired_far, \
1848  double* result_distance, \
1849  double* result_fa_r, \
1850  double* result_fr_r, \
1851  double* result_score, \
1852  void** out_exception \
1853  ), \
1854  ( \
1855  recognizer, \
1856  desired_far, \
1857  result_distance, \
1858  result_fa_r, \
1859  result_fr_r, \
1860  result_score, \
1861  out_exception \
1862  ), \
1863  ) \
1864  \
1865  decl( \
1866  void, \
1867  Recognizer_getROCCurvePointByFRR, /* #old */ \
1868  ( \
1869  void* recognizer, \
1870  double desired_frr, \
1871  double* result_distance, \
1872  double* result_fa_r, \
1873  double* result_fr_r, \
1874  void** out_exception \
1875  ), \
1876  ( \
1877  recognizer, \
1878  desired_frr, \
1879  result_distance, \
1880  result_fa_r, \
1881  result_fr_r, \
1882  out_exception \
1883  ), \
1884  ) \
1885  \
1886  decl( \
1887  void, \
1888  Recognizer_getROCCurvePointByFRR_v2, \
1889  ( \
1890  void* recognizer, \
1891  double desired_frr, \
1892  double* result_distance, \
1893  double* result_fa_r, \
1894  double* result_fr_r, \
1895  double* result_score, \
1896  void** out_exception \
1897  ), \
1898  ( \
1899  recognizer, \
1900  desired_frr, \
1901  result_distance, \
1902  result_fa_r, \
1903  result_fr_r, \
1904  result_score, \
1905  out_exception \
1906  ), \
1907  ) \
1908  \
1909  decl( \
1910  void, \
1911  Recognizer_getROCCurvePointByScoreThreshold, \
1912  ( \
1913  void* recognizer, \
1914  double score_threshold, \
1915  double* result_distance, \
1916  double* result_fa_r, \
1917  double* result_fr_r, \
1918  double* result_score, \
1919  void** out_exception \
1920  ), \
1921  ( \
1922  recognizer, \
1923  score_threshold, \
1924  result_distance, \
1925  result_fa_r, \
1926  result_fr_r, \
1927  result_score, \
1928  out_exception \
1929  ), \
1930  ) \
1931  \
1932  decl( \
1933  void, \
1934  Recognizer_chooseRepresentativeTemplatesSet, \
1935  ( \
1936  void* recognizer, \
1937  pbio::facerec::TemplateImpl const* const* const templates, \
1938  int8_t const* const templates_inviolable_flags, \
1939  const int32_t templates_count, \
1940  int32_t* const choosen_set_indexes_out, \
1941  const int32_t set_size, \
1942  void** out_exception \
1943  ), \
1944  ( \
1945  recognizer, \
1946  templates, \
1947  templates_inviolable_flags, \
1948  templates_count, \
1949  choosen_set_indexes_out, \
1950  set_size, \
1951  out_exception \
1952  ), \
1953  ) \
1954  \
1955  \
1956  \
1957  \
1958  \
1959  decl( \
1960  void, \
1961  RawSample_getRectangle, \
1962  ( \
1963  void* rawsample, \
1964  int32_t *x, \
1965  int32_t *y, \
1966  int32_t *width, \
1967  int32_t *height, \
1968  void** out_exception \
1969  ), \
1970  ( \
1971  rawsample, \
1972  x, \
1973  y, \
1974  width, \
1975  height, \
1976  out_exception \
1977  ), \
1978  ) \
1979  \
1980  decl( \
1981  void, \
1982  RawSample_getLandmarks, \
1983  ( \
1984  void* rawsample, \
1985  void* landmarks_floats_vector, \
1986  pbio::facerec::capi::assign_floats_vector_func_type assign_floats_vector_func, \
1987  void** out_exception \
1988  ), \
1989  ( \
1990  rawsample, \
1991  landmarks_floats_vector, \
1992  assign_floats_vector_func, \
1993  out_exception \
1994  ), \
1995  ) \
1996  \
1997  decl( \
1998  void, \
1999  RawSample_getIrisLandmarks, \
2000  ( \
2001  void* rawsample, \
2002  void* landmarks_floats_vector, \
2003  pbio::facerec::capi::assign_floats_vector_func_type assign_floats_vector_func, \
2004  void** out_exception \
2005  ), \
2006  ( \
2007  rawsample, \
2008  landmarks_floats_vector, \
2009  assign_floats_vector_func, \
2010  out_exception \
2011  ), \
2012  ) \
2013  \
2014  decl( \
2015  void, \
2016  RawSample_getLeftEye, \
2017  ( \
2018  void* rawsample, \
2019  float* point_x, \
2020  float* point_y, \
2021  void** out_exception \
2022  ), \
2023  ( \
2024  rawsample, \
2025  point_x, \
2026  point_y, \
2027  out_exception \
2028  ), \
2029  ) \
2030  \
2031  decl( \
2032  void, \
2033  RawSample_getRightEye, \
2034  ( \
2035  void* rawsample, \
2036  float* point_x, \
2037  float* point_y, \
2038  void** out_exception \
2039  ), \
2040  ( \
2041  rawsample, \
2042  point_x, \
2043  point_y, \
2044  out_exception \
2045  ), \
2046  ) \
2047  \
2048  decl( \
2049  void, \
2050  RawSample_getAngles, \
2051  ( \
2052  void* rawsample, \
2053  float* yaw, \
2054  float* pitch, \
2055  float* roll, \
2056  void** out_exception \
2057  ), \
2058  ( \
2059  rawsample, \
2060  yaw, \
2061  pitch, \
2062  roll, \
2063  out_exception \
2064  ), \
2065  ) \
2066  \
2067  decl( \
2068  int32_t, \
2069  RawSample_getID, \
2070  ( \
2071  void* rawsample, \
2072  void** out_exception \
2073  ), \
2074  ( \
2075  rawsample, \
2076  out_exception \
2077  ), \
2078  return ) \
2079  \
2080  decl( \
2081  int32_t, \
2082  RawSample_getType, \
2083  ( \
2084  void* rawsample, \
2085  void** out_exception \
2086  ), \
2087  ( \
2088  rawsample, \
2089  out_exception \
2090  ), \
2091  return ) \
2092  \
2093  decl( \
2094  float, \
2095  RawSample_getScore, \
2096  ( \
2097  void* rawsample, \
2098  void** out_exception \
2099  ), \
2100  ( \
2101  rawsample, \
2102  out_exception \
2103  ), \
2104  return ) \
2105  \
2106  decl( \
2107  float, \
2108  RawSample_getFaceVisibilityScore, \
2109  ( \
2110  void* rawsample, \
2111  void** out_exception \
2112  ), \
2113  ( \
2114  rawsample, \
2115  out_exception \
2116  ), \
2117  return ) \
2118  \
2119  decl( \
2120  void, \
2121  RawSample_getFaceCutRectangle, \
2122  ( \
2123  void* rawsample, \
2124  int32_t cut_type, \
2125  float* corners, \
2126  void** out_exception \
2127  ), \
2128  ( \
2129  rawsample, \
2130  cut_type, \
2131  corners, \
2132  out_exception \
2133  ), \
2134  ) \
2135  \
2136  decl( \
2137  void, \
2138  RawSample_save, \
2139  ( \
2140  void* rawsample, \
2141  void* binary_stream, \
2142  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
2143  int32_t format, \
2144  void** out_exception \
2145  ), \
2146  ( \
2147  rawsample, \
2148  binary_stream, \
2149  binary_stream_write_func, \
2150  format, \
2151  out_exception \
2152  ), \
2153  ) \
2154  \
2155  decl( \
2156  void, \
2157  RawSample_save_without_image, \
2158  ( \
2159  void* rawsample, \
2160  void* binary_stream, \
2161  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
2162  double space_translation_x, \
2163  double space_translation_y, \
2164  double space_scale, \
2165  void** out_exception \
2166  ), \
2167  ( \
2168  rawsample, \
2169  binary_stream, \
2170  binary_stream_write_func, \
2171  space_translation_x, \
2172  space_translation_y, \
2173  space_scale, \
2174  out_exception \
2175  ), \
2176  ) \
2177  \
2178  decl( \
2179  int32_t, \
2180  RawSample_getFrameID, \
2181  ( \
2182  void* rawsample, \
2183  void** out_exception \
2184  ), \
2185  ( \
2186  rawsample, \
2187  out_exception \
2188  ), \
2189  return ) \
2190  \
2191  decl( \
2192  int32_t, \
2193  RawSample_hasOriginalImage, \
2194  ( \
2195  void* rawsample, \
2196  void** out_exception \
2197  ), \
2198  ( \
2199  rawsample, \
2200  out_exception \
2201  ), \
2202  return ) \
2203  \
2204  decl( \
2205  void, \
2206  RawSample_getOriginalImage, \
2207  ( \
2208  void* rawsample, \
2209  int32_t* rows, \
2210  int32_t* cols, \
2211  int32_t* format, \
2212  void const** data, \
2213  void** out_exception \
2214  ), \
2215  ( \
2216  rawsample, \
2217  rows, \
2218  cols, \
2219  format, \
2220  data, \
2221  out_exception \
2222  ), \
2223  ) \
2224  \
2225  decl( \
2226  void, \
2227  RawSample_cutFaceImage, \
2228  ( \
2229  void* rawsample, \
2230  void* binary_stream, \
2231  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
2232  int32_t *width, \
2233  int32_t *height, \
2234  int32_t format, \
2235  int32_t color_model, \
2236  int32_t cut_type, \
2237  void** out_exception \
2238  ), \
2239  ( \
2240  rawsample, \
2241  binary_stream, \
2242  binary_stream_write_func, \
2243  width, \
2244  height, \
2245  format, \
2246  color_model, \
2247  cut_type, \
2248  out_exception \
2249  ), \
2250  ) \
2251  \
2252  decl( \
2253  void, \
2254  RawSample_cutFaceImage_original_raw_image, \
2255  ( \
2256  void* rawsample, \
2257  const void* original_image_data, \
2258  int32_t original_image_width, \
2259  int32_t original_image_height, \
2260  int32_t original_image_format, \
2261  void* binary_stream, \
2262  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
2263  int32_t format, \
2264  int32_t cut_type, \
2265  void** out_exception \
2266  ), \
2267  ( \
2268  rawsample, \
2269  original_image_data, \
2270  original_image_width, \
2271  original_image_height, \
2272  original_image_format, \
2273  binary_stream, \
2274  binary_stream_write_func, \
2275  format, \
2276  cut_type, \
2277  out_exception \
2278  ), \
2279  ) \
2280  \
2281  decl( \
2282  void, \
2283  RawSample_cutFaceImage_original_raw_image_with_crop, \
2284  ( \
2285  void* rawsample, \
2286  const void* original_image_data, \
2287  int32_t original_image_width, \
2288  int32_t original_image_height, \
2289  int32_t original_image_format, \
2290  int32_t original_image_with_crop, \
2291  int32_t original_image_crop_info_offset_x, \
2292  int32_t original_image_crop_info_offset_y, \
2293  int32_t original_image_crop_info_data_image_width, \
2294  int32_t original_image_crop_info_data_image_height, \
2295  void* binary_stream, \
2296  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
2297  int32_t format, \
2298  int32_t cut_type, \
2299  void** out_exception \
2300  ), \
2301  ( \
2302  rawsample, \
2303  original_image_data, \
2304  original_image_width, \
2305  original_image_height, \
2306  original_image_format, \
2307  original_image_with_crop, \
2308  original_image_crop_info_offset_x, \
2309  original_image_crop_info_offset_y, \
2310  original_image_crop_info_data_image_width, \
2311  original_image_crop_info_data_image_height, \
2312  binary_stream, \
2313  binary_stream_write_func, \
2314  format, \
2315  cut_type, \
2316  out_exception \
2317  ), \
2318  ) \
2319  \
2320  decl( \
2321  pbio::facerec::RawSampleImpl*, \
2322  RawSample_downscaleToPreferredSize, \
2323  ( \
2324  void* rawsample, \
2325  void** out_exception \
2326  ), \
2327  ( \
2328  rawsample, \
2329  out_exception \
2330  ), \
2331  return ) \
2332  \
2333  decl( \
2334  HContext*, \
2335  RawSample_toContext, \
2336  ( \
2337  void* rawsample, \
2338  void** out_exception \
2339  ), \
2340  ( \
2341  rawsample, \
2342  out_exception \
2343  ), \
2344  return ) \
2345  \
2346  \
2347  \
2348  \
2349  decl( \
2350  void, \
2351  Capturer_capture_raw_image, \
2352  ( \
2353  void* capturer, \
2354  const void* image_data, \
2355  int32_t image_width, \
2356  int32_t image_height, \
2357  int32_t image_format, \
2358  void* result_pointers_vector, \
2359  pbio::facerec::capi::assign_pointers_vector_func_type assign_pointers_vector_func, \
2360  void** out_exception \
2361  ), \
2362  ( \
2363  capturer, \
2364  image_data, \
2365  image_width, \
2366  image_height, \
2367  image_format, \
2368  result_pointers_vector, \
2369  assign_pointers_vector_func, \
2370  out_exception \
2371  ), \
2372  ) \
2373  \
2374  decl( \
2375  void, \
2376  Capturer_capture_raw_image_with_crop, \
2377  ( \
2378  void* capturer, \
2379  const void* image_data, \
2380  int32_t image_width, \
2381  int32_t image_height, \
2382  int32_t image_format, \
2383  int32_t image_with_crop, \
2384  int32_t image_crop_info_offset_x, \
2385  int32_t image_crop_info_offset_y, \
2386  int32_t image_crop_info_data_image_width, \
2387  int32_t image_crop_info_data_image_height, \
2388  void* result_pointers_vector, \
2389  pbio::facerec::capi::assign_pointers_vector_func_type assign_pointers_vector_func, \
2390  void** out_exception \
2391  ), \
2392  ( \
2393  capturer, \
2394  image_data, \
2395  image_width, \
2396  image_height, \
2397  image_format, \
2398  image_with_crop, \
2399  image_crop_info_offset_x, \
2400  image_crop_info_offset_y, \
2401  image_crop_info_data_image_width, \
2402  image_crop_info_data_image_height, \
2403  result_pointers_vector, \
2404  assign_pointers_vector_func, \
2405  out_exception \
2406  ), \
2407  ) \
2408  \
2409  decl( \
2410  void, \
2411  Capturer_capture_encoded_image, \
2412  ( \
2413  void* capturer, \
2414  const void* data, \
2415  int32_t data_size, \
2416  void* result_pointers_vector, \
2417  pbio::facerec::capi::assign_pointers_vector_func_type assign_pointers_vector_func, \
2418  void** out_exception \
2419  ), \
2420  ( \
2421  capturer, \
2422  data, \
2423  data_size, \
2424  result_pointers_vector, \
2425  assign_pointers_vector_func, \
2426  out_exception \
2427  ), \
2428  ) \
2429  \
2430  decl( \
2431  pbio::facerec::RawSampleImpl*, \
2432  Capturer_manualCapture_raw_image_eyes_points, \
2433  ( \
2434  void* capturer, \
2435  const void* image_data, \
2436  int32_t image_width, \
2437  int32_t image_height, \
2438  int32_t image_format, \
2439  float left_eye_x, \
2440  float left_eye_y, \
2441  float right_eye_x, \
2442  float right_eye_y, \
2443  void** out_exception \
2444  ), \
2445  ( \
2446  capturer, \
2447  image_data, \
2448  image_width, \
2449  image_height, \
2450  image_format, \
2451  left_eye_x, \
2452  left_eye_y, \
2453  right_eye_x, \
2454  right_eye_y, \
2455  out_exception \
2456  ), \
2457  return ) \
2458  \
2459  decl( \
2460  pbio::facerec::RawSampleImpl*, \
2461  Capturer_manualCapture_raw_image_eyes_points_with_crop, \
2462  ( \
2463  void* capturer, \
2464  const void* image_data, \
2465  int32_t image_width, \
2466  int32_t image_height, \
2467  int32_t image_format, \
2468  int32_t image_with_crop, \
2469  int32_t image_crop_info_offset_x, \
2470  int32_t image_crop_info_offset_y, \
2471  int32_t image_crop_info_data_image_width, \
2472  int32_t image_crop_info_data_image_height, \
2473  float left_eye_x, \
2474  float left_eye_y, \
2475  float right_eye_x, \
2476  float right_eye_y, \
2477  void** out_exception \
2478  ), \
2479  ( \
2480  capturer, \
2481  image_data, \
2482  image_width, \
2483  image_height, \
2484  image_format, \
2485  image_with_crop, \
2486  image_crop_info_offset_x, \
2487  image_crop_info_offset_y, \
2488  image_crop_info_data_image_width, \
2489  image_crop_info_data_image_height, \
2490  left_eye_x, \
2491  left_eye_y, \
2492  right_eye_x, \
2493  right_eye_y, \
2494  out_exception \
2495  ), \
2496  return ) \
2497  \
2498  decl( \
2499  pbio::facerec::RawSampleImpl*, \
2500  Capturer_manualCapture_raw_image_points_vector, \
2501  ( \
2502  void* capturer, \
2503  const void* image_data, \
2504  int32_t image_width, \
2505  int32_t image_height, \
2506  int32_t image_format, \
2507  float const* const points, \
2508  const int32_t points_count, \
2509  void** out_exception \
2510  ), \
2511  ( \
2512  capturer, \
2513  image_data, \
2514  image_width, \
2515  image_height, \
2516  image_format, \
2517  points, \
2518  points_count, \
2519  out_exception \
2520  ), \
2521  return ) \
2522  \
2523  decl( \
2524  pbio::facerec::RawSampleImpl*, \
2525  Capturer_manualCapture_raw_image_points_vector_with_crop, \
2526  ( \
2527  void* capturer, \
2528  const void* image_data, \
2529  int32_t image_width, \
2530  int32_t image_height, \
2531  int32_t image_format, \
2532  int32_t image_with_crop, \
2533  int32_t image_crop_info_offset_x, \
2534  int32_t image_crop_info_offset_y, \
2535  int32_t image_crop_info_data_image_width, \
2536  int32_t image_crop_info_data_image_height, \
2537  float const* const points, \
2538  const int32_t points_count, \
2539  void** out_exception \
2540  ), \
2541  ( \
2542  capturer, \
2543  image_data, \
2544  image_width, \
2545  image_height, \
2546  image_format, \
2547  image_with_crop, \
2548  image_crop_info_offset_x, \
2549  image_crop_info_offset_y, \
2550  image_crop_info_data_image_width, \
2551  image_crop_info_data_image_height, \
2552  points, \
2553  points_count, \
2554  out_exception \
2555  ), \
2556  return ) \
2557  \
2558  decl( \
2559  pbio::facerec::RawSampleImpl*, \
2560  Capturer_manualCapture_encoded_image_eyes_points, \
2561  ( \
2562  void* capturer, \
2563  const void* data, \
2564  int32_t data_size, \
2565  float left_eye_x, \
2566  float left_eye_y, \
2567  float right_eye_x, \
2568  float right_eye_y, \
2569  void** out_exception \
2570  ), \
2571  ( \
2572  capturer, \
2573  data, \
2574  data_size, \
2575  left_eye_x, \
2576  left_eye_y, \
2577  right_eye_x, \
2578  right_eye_y, \
2579  out_exception \
2580  ), \
2581  return ) \
2582  \
2583  decl( \
2584  pbio::facerec::RawSampleImpl*, \
2585  Capturer_manualCapture_encoded_image_points_vector, \
2586  ( \
2587  void* capturer, \
2588  const void* data, \
2589  int32_t data_size, \
2590  float const* const points, \
2591  const int32_t points_count, \
2592  void** out_exception \
2593  ), \
2594  ( \
2595  capturer, \
2596  data, \
2597  data_size, \
2598  points, \
2599  points_count, \
2600  out_exception \
2601  ), \
2602  return ) \
2603  \
2604  decl( \
2605  void, \
2606  Capturer_resetHistory, \
2607  ( \
2608  void* capturer, \
2609  void** out_exception \
2610  ), \
2611  ( \
2612  capturer, \
2613  out_exception \
2614  ), \
2615  ) \
2616  \
2617  decl( \
2618  int32_t, \
2619  Capturer_getType, \
2620  ( \
2621  void* capturer, \
2622  void** out_exception \
2623  ), \
2624  ( \
2625  capturer, \
2626  out_exception \
2627  ), \
2628  return ) \
2629  \
2630  decl( \
2631  void, \
2632  Capturer_setParameter, \
2633  ( \
2634  void* capturer, \
2635  const char* param_name, \
2636  double param_value, \
2637  void** out_exception \
2638  ), \
2639  ( \
2640  capturer, \
2641  param_name, \
2642  param_value, \
2643  out_exception \
2644  ), \
2645  ) \
2646  \
2647  \
2648  \
2649  \
2650  \
2651  decl( \
2652  pbio::facerec::StructStorageImpl*, \
2653  FacerecService_getLicenseState, \
2654  ( \
2655  void* service, \
2656  void** out_exception \
2657  ), \
2658  ( \
2659  service, \
2660  out_exception \
2661  ), \
2662  return ) \
2663  \
2664  decl( \
2665  void, \
2666  FacerecService_forceOnlineLicenseUpdate, \
2667  ( \
2668  void* service, \
2669  void** out_exception \
2670  ), \
2671  ( \
2672  service, \
2673  out_exception \
2674  ), \
2675  ) \
2676  \
2677  decl( \
2678  pbio::facerec::QualityEstimatorImpl*, \
2679  FacerecService_createQualityEstimator, \
2680  ( \
2681  void* service, \
2682  const char* ini_file, \
2683  void** out_exception \
2684  ), \
2685  ( \
2686  service, \
2687  ini_file, \
2688  out_exception \
2689  ), \
2690  return ) \
2691  \
2692  decl( \
2693  pbio::facerec::FaceQualityEstimatorImpl*, \
2694  FacerecService_createFaceQualityEstimator, \
2695  ( \
2696  void* service, \
2697  const char* ini_file, \
2698  void** out_exception \
2699  ), \
2700  ( \
2701  service, \
2702  ini_file, \
2703  out_exception \
2704  ), \
2705  return ) \
2706  \
2707  decl( \
2708  pbio::facerec::AgeGenderEstimatorImpl*, \
2709  FacerecService_createAgeGenderEstimator, \
2710  ( \
2711  void* service, \
2712  const char* ini_file, \
2713  void** out_exception \
2714  ), \
2715  ( \
2716  service, \
2717  ini_file, \
2718  out_exception \
2719  ), \
2720  return ) \
2721  \
2722  decl( \
2723  pbio::facerec::LivenessEstimatorImpl*, \
2724  FacerecService_createLivenessEstimator, \
2725  ( \
2726  void* service, \
2727  void** out_exception \
2728  ), \
2729  ( \
2730  service, \
2731  out_exception \
2732  ), \
2733  return ) \
2734  \
2735  decl( \
2736  pbio::facerec::RawSampleImpl*, \
2737  FacerecService_loadRawSample, \
2738  ( \
2739  void* service, \
2740  void* binary_stream, \
2741  ::pbio::facerec::capi::binary_stream_read_func_type binary_stream_read_func, \
2742  void** out_exception \
2743  ), \
2744  ( \
2745  service, \
2746  binary_stream, \
2747  binary_stream_read_func, \
2748  out_exception \
2749  ), \
2750  return ) \
2751  \
2752  decl( \
2753  pbio::facerec::RawSampleImpl*, \
2754  FacerecService_loadRawSampleWithoutImage_raw_image, \
2755  ( \
2756  void* service, \
2757  void* binary_stream, \
2758  ::pbio::facerec::capi::binary_stream_read_func_type binary_stream_read_func, \
2759  const void* image_data, \
2760  int32_t image_width, \
2761  int32_t image_height, \
2762  int32_t image_format, \
2763  int32_t image_with_crop, \
2764  int32_t image_crop_info_offset_x, \
2765  int32_t image_crop_info_offset_y, \
2766  int32_t image_crop_info_data_image_width, \
2767  int32_t image_crop_info_data_image_height, \
2768  double space_translation_x, \
2769  double space_translation_y, \
2770  double space_scale, \
2771  void** out_exception \
2772  ), \
2773  ( \
2774  service, \
2775  binary_stream, \
2776  binary_stream_read_func, \
2777  image_data, \
2778  image_width, \
2779  image_height, \
2780  image_format, \
2781  image_with_crop, \
2782  image_crop_info_offset_x, \
2783  image_crop_info_offset_y, \
2784  image_crop_info_data_image_width, \
2785  image_crop_info_data_image_height, \
2786  space_translation_x, \
2787  space_translation_y, \
2788  space_scale, \
2789  out_exception \
2790  ), \
2791  return ) \
2792  \
2793  decl( \
2794  pbio::facerec::RawSampleImpl*, \
2795  FacerecService_loadRawSampleWithoutImage_encoded_image, \
2796  ( \
2797  void* service, \
2798  void* binary_stream, \
2799  ::pbio::facerec::capi::binary_stream_read_func_type binary_stream_read_func, \
2800  const void* data, \
2801  int32_t data_size, \
2802  double space_translation_x, \
2803  double space_translation_y, \
2804  double space_scale, \
2805  void** out_exception \
2806  ), \
2807  ( \
2808  service, \
2809  binary_stream, \
2810  binary_stream_read_func, \
2811  data, \
2812  data_size, \
2813  space_translation_x, \
2814  space_translation_y, \
2815  space_scale, \
2816  out_exception \
2817  ), \
2818  return ) \
2819  \
2820  decl( \
2821  pbio::facerec::EmotionsEstimatorImpl*, \
2822  FacerecService_createEmotionsEstimator, \
2823  ( \
2824  void* service, \
2825  const char* ini_file, \
2826  void** out_exception \
2827  ), \
2828  ( \
2829  service, \
2830  ini_file, \
2831  out_exception \
2832  ), \
2833  return ) \
2834  \
2835  decl( \
2836  pbio::facerec::CapturerImpl*, \
2837  FacerecService_createCapturerE, \
2838  ( \
2839  void* service, \
2840  const char* ini_file, \
2841  const int32_t overridden_count, \
2842  char const* const* const overridden_keys, \
2843  double const* const overridden_values, \
2844  void** out_exception \
2845  ), \
2846  ( \
2847  service, \
2848  ini_file, \
2849  overridden_count, \
2850  overridden_keys, \
2851  overridden_values, \
2852  out_exception \
2853  ), \
2854  return ) \
2855  \
2856  decl( \
2857  pbio::facerec::CameraCalibratorImpl*, \
2858  FacerecService_createCameraCalibrator, \
2859  ( \
2860  void* service, \
2861  void** out_exception \
2862  ), \
2863  ( \
2864  service, \
2865  out_exception \
2866  ), \
2867  return ) \
2868  \
2869  decl( \
2870  pbio::facerec::RecognizerImpl*, \
2871  FacerecService_createRecognizer2, \
2872  ( \
2873  void* service, \
2874  const char* ini_file, \
2875  const int32_t overridden_count, \
2876  char const* const* const overridden_keys, \
2877  double const* const overridden_values, \
2878  const int32_t processing, \
2879  const int32_t matching, \
2880  const int32_t processing_less_memory_consumption, \
2881  void** out_exception \
2882  ), \
2883  ( \
2884  service, \
2885  ini_file, \
2886  overridden_count, \
2887  overridden_keys, \
2888  overridden_values, \
2889  processing, \
2890  matching, \
2891  processing_less_memory_consumption, \
2892  out_exception \
2893  ), \
2894  return ) \
2895  \
2896  \
2897  decl( \
2898  void*, \
2899  FacerecService_createDynamicTemplateIndex_1, \
2900  ( \
2901  void* service, \
2902  const void** contextTemplates, \
2903  const char** uuids, \
2904  uint64_t size, \
2905  const HContext* config, \
2906  void** outException \
2907  ), \
2908  ( \
2909  service, \
2910  contextTemplates, \
2911  uuids, \
2912  size, \
2913  config, \
2914  outException \
2915  ), \
2916  return ) \
2917  \
2918  \
2919  decl( \
2920  void*, \
2921  FacerecService_createDynamicTemplateIndex_2, \
2922  ( \
2923  void* service, \
2924  const HContext* config, \
2925  void** outException \
2926  ), \
2927  ( \
2928  service, \
2929  config, \
2930  outException \
2931  ), \
2932  return ) \
2933  \
2934  \
2935  decl( \
2936  void, \
2937  DynamicTemplateIndex_add_1, \
2938  ( \
2939  void* templateIndex, \
2940  const pbio::facerec::TemplateImpl* templ, \
2941  const char* uuid, \
2942  void** out_exception \
2943  ), \
2944  ( \
2945  templateIndex, \
2946  templ, \
2947  uuid, \
2948  out_exception \
2949  ), \
2950  return ) \
2951  \
2952  \
2953  decl( \
2954  void, \
2955  DynamicTemplateIndex_add_2, \
2956  ( \
2957  void* templateIndex, \
2958  pbio::facerec::TemplateImpl** templs, \
2959  const char** uuids, \
2960  uint64_t size, \
2961  void** out_exception \
2962  ), \
2963  ( \
2964  templateIndex, \
2965  templs, \
2966  uuids, \
2967  size, \
2968  out_exception \
2969  ), \
2970  return ) \
2971  \
2972  \
2973  decl( \
2974  void, \
2975  DynamicTemplateIndex_add_3, \
2976  ( \
2977  void* templateIndex, \
2978  const void* contextTemplate, \
2979  const char* uuid, \
2980  void** out_exception \
2981  ), \
2982  ( \
2983  templateIndex, \
2984  contextTemplate, \
2985  uuid, \
2986  out_exception \
2987  ), \
2988  return ) \
2989  \
2990  \
2991  decl( \
2992  void, \
2993  DynamicTemplateIndex_add_4, \
2994  ( \
2995  void* templateIndex, \
2996  const void** contextTemplates, \
2997  const char** uuids, \
2998  uint64_t size, \
2999  void** out_exception \
3000  ), \
3001  ( \
3002  templateIndex, \
3003  contextTemplates, \
3004  uuids, \
3005  size, \
3006  out_exception \
3007  ), \
3008  return ) \
3009  \
3010  \
3011  decl( \
3012  void, \
3013  DynamicTemplateIndex_remove_1, \
3014  ( \
3015  void* templateIndex, \
3016  const char* uuid, \
3017  void** out_exception \
3018  ), \
3019  ( \
3020  templateIndex, \
3021  uuid, \
3022  out_exception \
3023  ), \
3024  return ) \
3025  \
3026  \
3027  decl( \
3028  uint64_t, \
3029  DynamicTemplateIndex_size, \
3030  ( \
3031  void* templateIndex, \
3032  void** outException \
3033  ), \
3034  ( \
3035  templateIndex, \
3036  outException \
3037  ), \
3038  return ) \
3039  \
3040  \
3041  decl( \
3042  void, \
3043  DynamicTemplateIndex_concatenate, \
3044  ( \
3045  void* templateIndex, \
3046  void* otherIndex, \
3047  void** out_exception \
3048  ), \
3049  ( \
3050  templateIndex, \
3051  otherIndex, \
3052  out_exception \
3053  ), \
3054  return ) \
3055  \
3056  \
3057  decl( \
3058  void*, \
3059  DynamicTemplateIndex_at_by_uuid, \
3060  ( \
3061  void* templateIndex, \
3062  const char* uuid, \
3063  void** out_exception \
3064  ), \
3065  ( \
3066  templateIndex, \
3067  uuid, \
3068  out_exception \
3069  ), \
3070  return ) \
3071  \
3072  \
3073  decl( \
3074  void, \
3075  DynamicTemplateIndex_at_by_index, \
3076  ( \
3077  void* templateIndex, \
3078  int64_t index, \
3079  void* stream, \
3080  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
3081  void** out_exception \
3082  ), \
3083  ( \
3084  templateIndex, \
3085  index, \
3086  stream, \
3087  binary_stream_write_func, \
3088  out_exception \
3089  ), \
3090  return ) \
3091  \
3092  \
3093  decl( \
3094  void*, \
3095  DynamicTemplateIndex_get, \
3096  ( \
3097  void* templateIndex, \
3098  int64_t index, \
3099  void** outException \
3100  ), \
3101  ( \
3102  templateIndex, \
3103  index, \
3104  outException \
3105  ), \
3106  return ) \
3107  \
3108  \
3109  decl( \
3110  uint64_t, \
3111  DynamicTemplateIndex_capacity, \
3112  ( \
3113  void* templateIndex, \
3114  void** out_exception \
3115  ), \
3116  ( \
3117  templateIndex, \
3118  out_exception \
3119  ), \
3120  return ) \
3121  \
3122  \
3123  decl( \
3124  void, \
3125  DynamicTemplateIndex_remove_2, \
3126  ( \
3127  void* templateIndex, \
3128  const char** uuids, \
3129  uint64_t size, \
3130  void** out_exception \
3131  ), \
3132  ( \
3133  templateIndex, \
3134  uuids, \
3135  size, \
3136  out_exception \
3137  ), \
3138  return ) \
3139  \
3140  \
3141  decl( \
3142  void, \
3143  DynamicTemplateIndex_getMethodName, \
3144  ( \
3145  void* templateIndex, \
3146  void* name_stream, \
3147  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
3148  void** out_exception \
3149  ), \
3150  ( \
3151  templateIndex, \
3152  name_stream, \
3153  binary_stream_write_func, \
3154  out_exception \
3155  ), \
3156  ) \
3157  \
3158  \
3159  decl( \
3160  void, \
3161  DynamicTemplateIndex_destructor, \
3162  ( \
3163  void* templateIndex \
3164  ), \
3165  ( \
3166  templateIndex \
3167  ), \
3168  ) \
3169  \
3170  \
3171  decl( \
3172  pbio::facerec::VideoWorkerImpl*, \
3173  FacerecService_createVideoWorker, /* #old */ \
3174  ( \
3175  void* service, \
3176  const ::pbio::facerec::capi::VideoWorker_TrackingCallbackFunc trackingCallback, \
3177  const ::pbio::facerec::capi::VideoWorker_TemplateCreatedCallbackFunc templateCreatedCallback, \
3178  const ::pbio::facerec::capi::VideoWorker_MatchFoundCallbackFunc matchFoundCallback, \
3179  const ::pbio::facerec::capi::VideoWorker_TrackingLostCallbackFunc trackingLostCallback, \
3180  const char* video_worker_ini_file, \
3181  const int32_t vw_overridden_count, \
3182  char const* const* const vw_overridden_keys, \
3183  double const* const vw_overridden_values, \
3184  const char* recognizer_ini_file, \
3185  const int32_t streams_count, \
3186  const int32_t processing_threads_count, \
3187  const int32_t matching_threads_count, \
3188  void** out_exception \
3189  ), \
3190  ( \
3191  service, \
3192  trackingCallback, \
3193  templateCreatedCallback, \
3194  matchFoundCallback, \
3195  trackingLostCallback, \
3196  video_worker_ini_file, \
3197  vw_overridden_count, \
3198  vw_overridden_keys, \
3199  vw_overridden_values, \
3200  recognizer_ini_file, \
3201  streams_count, \
3202  processing_threads_count, \
3203  matching_threads_count, \
3204  out_exception \
3205  ), \
3206  return ) \
3207  \
3208  \
3209  \
3210  decl( \
3211  pbio::facerec::VideoWorkerImpl*, \
3212  FacerecService_createVideoWorker_sti_age_gender_emotions, \
3213  ( \
3214  void* service, \
3215  const ::pbio::facerec::capi::VideoWorker_TrackingCallbackFunc trackingCallback, \
3216  const ::pbio::facerec::capi::VideoWorker_TemplateCreatedCallbackFunc templateCreatedCallback, \
3217  const ::pbio::facerec::capi::VideoWorker_MatchFoundCallbackFunc matchFoundCallback, \
3218  const ::pbio::facerec::capi::VideoWorker_TrackingLostCallbackFunc trackingLostCallback, \
3219  const ::pbio::facerec::capi::VideoWorker_StiPersonOutdatedCallbackFunc stiPersonOutdatedCallback, \
3220  const char* video_worker_ini_file, \
3221  const int32_t vw_overridden_count, \
3222  char const* const* const vw_overridden_keys, \
3223  double const* const vw_overridden_values, \
3224  const char* recognizer_ini_file, \
3225  const int32_t rec_overridden_count, \
3226  char const* const* const rec_overridden_keys, \
3227  double const* const rec_overridden_values, \
3228  const int32_t streams_count, \
3229  const int32_t processing_threads_count, \
3230  const int32_t matching_threads_count, \
3231  const uint32_t short_time_identification_enabled, \
3232  const float short_time_identification_distance_threshold, \
3233  const float short_time_identification_outdate_time_seconds, \
3234  const int32_t age_gender_threads_count, \
3235  const int32_t emotions_threads_count, \
3236  void** out_exception \
3237  ), \
3238  ( \
3239  service, \
3240  trackingCallback, \
3241  templateCreatedCallback, \
3242  matchFoundCallback, \
3243  trackingLostCallback, \
3244  stiPersonOutdatedCallback, \
3245  video_worker_ini_file, \
3246  vw_overridden_count, \
3247  vw_overridden_keys, \
3248  vw_overridden_values, \
3249  recognizer_ini_file, \
3250  rec_overridden_count, \
3251  rec_overridden_keys, \
3252  rec_overridden_values, \
3253  streams_count, \
3254  processing_threads_count, \
3255  matching_threads_count, \
3256  short_time_identification_enabled, \
3257  short_time_identification_distance_threshold, \
3258  short_time_identification_outdate_time_seconds, \
3259  age_gender_threads_count, \
3260  emotions_threads_count, \
3261  out_exception \
3262  ), \
3263  return ) \
3264  \
3265  \
3266  \
3267  decl( \
3268  pbio::facerec::DepthLivenessEstimatorImpl*, \
3269  FacerecService_createDepthLivenessEstimator, \
3270  ( \
3271  void* service, \
3272  const char* ini_file, \
3273  void** out_exception \
3274  ), \
3275  ( \
3276  service, \
3277  ini_file, \
3278  out_exception \
3279  ), \
3280  return ) \
3281  \
3282  decl( \
3283  pbio::facerec::DepthLivenessEstimatorImpl*, \
3284  FacerecService_createDepthLivenessEstimatorE, \
3285  ( \
3286  void* service, \
3287  const char* ini_file, \
3288  const int32_t overridden_count, \
3289  char const* const* const overridden_keys, \
3290  double const* const overridden_values, \
3291  void** out_exception \
3292  ), \
3293  ( \
3294  service, \
3295  ini_file, \
3296  overridden_count, \
3297  overridden_keys, \
3298  overridden_values, \
3299  out_exception \
3300  ), \
3301  return ) \
3302  \
3303  decl( \
3304  pbio::facerec::IRLivenessEstimatorImpl*, \
3305  FacerecService_createIRLivenessEstimatorE, \
3306  ( \
3307  void* service, \
3308  const char* ini_file, \
3309  const int32_t overridden_count, \
3310  char const* const* const overridden_keys, \
3311  double const* const overridden_values, \
3312  void** out_exception \
3313  ), \
3314  ( \
3315  service, \
3316  ini_file, \
3317  overridden_count, \
3318  overridden_keys, \
3319  overridden_values, \
3320  out_exception \
3321  ), \
3322  return ) \
3323  \
3324  decl( \
3325  pbio::facerec::Liveness2DEstimatorImpl*, \
3326  FacerecService_createLiveness2DEstimatorE, \
3327  ( \
3328  void* service, \
3329  const char* ini_file, \
3330  const int32_t overridden_count, \
3331  char const* const* const overridden_keys, \
3332  double const* const overridden_values, \
3333  void** out_exception \
3334  ), \
3335  ( \
3336  service, \
3337  ini_file, \
3338  overridden_count, \
3339  overridden_keys, \
3340  overridden_values, \
3341  out_exception \
3342  ), \
3343  return ) \
3344  \
3345  decl( \
3346  pbio::facerec::FaceAttributesEstimatorImpl*, \
3347  FacerecService_createFaceAttributesEstimator, \
3348  ( \
3349  void* service, \
3350  const char* ini_file, \
3351  const int32_t overridden_count, \
3352  char const* const* const overridden_keys, \
3353  double const* const overridden_values, \
3354  void** out_exception \
3355  ), \
3356  ( \
3357  service, \
3358  ini_file, \
3359  overridden_count, \
3360  overridden_keys, \
3361  overridden_values, \
3362  out_exception \
3363  ), \
3364  return ) \
3365  \
3366  decl( \
3367  void, \
3368  get_version, \
3369  ( \
3370  void* version_stream, \
3371  pbio::facerec::capi::binary_stream_write_func_type binary_stream_write_func, \
3372  void** out_exception \
3373  ), \
3374  ( \
3375  version_stream, \
3376  binary_stream_write_func, \
3377  out_exception \
3378  ), \
3379  ) \
3380  \
3381  decl( \
3382  void*, \
3383  FacerecService_constructor2, \
3384  ( \
3385  char const* conf_dir, \
3386  char const* license_dir, \
3387  char const* dll_path, \
3388  void** out_exception \
3389  ), \
3390  ( \
3391  conf_dir, \
3392  license_dir, \
3393  dll_path, \
3394  out_exception \
3395  ), \
3396  return ) \
3397  \
3398  decl( \
3399  void*, \
3400  FacerecService_constructor3, \
3401  ( \
3402  void* ae_ptr, \
3403  char const* conf_dir, \
3404  char const* license_dir, \
3405  char const* dll_path, \
3406  void** out_exception \
3407  ), \
3408  ( \
3409  ae_ptr, \
3410  conf_dir, \
3411  license_dir, \
3412  dll_path, \
3413  out_exception \
3414  ), \
3415  return ) \
3416  \
3417  decl( \
3418  void*, \
3419  FacerecService_constructor4, \
3420  ( \
3421  char const* conf_dir, \
3422  char const* license_body, \
3423  char const* dll_path, \
3424  void** out_exception \
3425  ), \
3426  ( \
3427  conf_dir, \
3428  license_body, \
3429  dll_path, \
3430  out_exception \
3431  ), \
3432  return ) \
3433  \
3434  decl( \
3435  void*, \
3436  FacerecService_constructor5, \
3437  ( \
3438  void* ae_ptr, \
3439  char const* conf_dir, \
3440  char const* license_body, \
3441  char const* dll_path, \
3442  void** out_exception \
3443  ), \
3444  ( \
3445  ae_ptr, \
3446  conf_dir, \
3447  license_body, \
3448  dll_path, \
3449  out_exception \
3450  ), \
3451  return ) \
3452  \
3453  decl( \
3454  void, \
3455  FacerecService_toggleAlgorithmsCacheKepp, \
3456  ( \
3457  int32_t cache_keep_enabled, \
3458  void** out_exception \
3459  ), \
3460  ( \
3461  cache_keep_enabled, \
3462  out_exception \
3463  ), \
3464  ) \
3465  \
3466  \
3467  \
3468  \
3469  \
3470  decl( \
3471  void*, \
3472  InternalImageBuffer_constructor, \
3473  ( \
3474  int32_t width, \
3475  int32_t height, \
3476  int32_t format, \
3477  int32_t* out_data_size, \
3478  void** out_data_ptr, \
3479  void** out_imagetptr_ptr, \
3480  void** out_exception \
3481  ), \
3482  ( \
3483  width, \
3484  height, \
3485  format, \
3486  out_data_size, \
3487  out_data_ptr, \
3488  out_imagetptr_ptr, \
3489  out_exception \
3490  ), \
3491  return ) \
3492  \
3493  \
3494  decl( \
3495  void*, \
3496  InternalImageBuffer_constructor_from_android_image, \
3497  ( \
3498  void* jni_env_ptr, \
3499  void* jobject_image_ptr, \
3500  int32_t* out_width, \
3501  int32_t* out_height, \
3502  int32_t* out_format, \
3503  int32_t* out_data_size, \
3504  void** out_data_ptr, \
3505  void** out_imagetptr_ptr, \
3506  void** out_exception \
3507  ), \
3508  ( \
3509  jni_env_ptr, \
3510  jobject_image_ptr, \
3511  out_width, \
3512  out_height, \
3513  out_format, \
3514  out_data_size, \
3515  out_data_ptr, \
3516  out_imagetptr_ptr, \
3517  out_exception \
3518  ), \
3519  return ) \
3520  \
3521  \
3522  \
3523  \
3524  decl( \
3525  void, \
3526  RawImage_convertYUV2ARGB, \
3527  ( \
3528  const void* image_data, \
3529  int32_t image_width, \
3530  int32_t image_height, \
3531  int32_t image_format, \
3532  int32_t image_with_crop, \
3533  int32_t image_crop_info_offset_x, \
3534  int32_t image_crop_info_offset_y, \
3535  int32_t image_crop_info_data_image_width, \
3536  int32_t image_crop_info_data_image_height, \
3537  int32_t downscale_x2, \
3538  void* result_buffer, \
3539  void** out_exception \
3540  ), \
3541  ( \
3542  image_data, \
3543  image_width, \
3544  image_height, \
3545  image_format, \
3546  image_with_crop, \
3547  image_crop_info_offset_x, \
3548  image_crop_info_offset_y, \
3549  image_crop_info_data_image_width, \
3550  image_crop_info_data_image_height, \
3551  downscale_x2, \
3552  result_buffer, \
3553  out_exception \
3554  ), \
3555  ) \
3556  \
3557  \
3558  \
3559  \
3560  decl( \
3561  void, \
3562  RawImage_convertYUV2RGB, \
3563  ( \
3564  const void* image_data, \
3565  int32_t image_width, \
3566  int32_t image_height, \
3567  int32_t image_format, \
3568  int32_t image_with_crop, \
3569  int32_t image_crop_info_offset_x, \
3570  int32_t image_crop_info_offset_y, \
3571  int32_t image_crop_info_data_image_width, \
3572  int32_t image_crop_info_data_image_height, \
3573  int32_t downscale_x2, \
3574  int32_t base_angle, \
3575  void* result_buffer, \
3576  void** out_exception \
3577  ), \
3578  ( \
3579  image_data, \
3580  image_width, \
3581  image_height, \
3582  image_format, \
3583  image_with_crop, \
3584  image_crop_info_offset_x, \
3585  image_crop_info_offset_y, \
3586  image_crop_info_data_image_width, \
3587  image_crop_info_data_image_height, \
3588  downscale_x2, \
3589  base_angle, \
3590  result_buffer, \
3591  out_exception \
3592  ), \
3593  ) \
3594  \
3595  \
3596  \
3597  \
3598  decl( \
3599  void, \
3600  RawImage_convertBGRA88882RGB, \
3601  ( \
3602  void* image_data, \
3603  int32_t image_width, \
3604  int32_t image_height, \
3605  int32_t base_angle, \
3606  void* result_buffer, \
3607  void** out_exception \
3608  ), \
3609  ( \
3610  image_data, \
3611  image_width, \
3612  image_height, \
3613  base_angle, \
3614  result_buffer, \
3615  out_exception \
3616  ), \
3617  ) \
3618  \
3619  \
3620  \
3621  \
3622  decl( \
3623  uint32_t, \
3624  apiException_code, \
3625  ( void* exception ), \
3626  ( exception ), \
3627  return ) \
3628  \
3629  decl( \
3630  char const*, \
3631  apiException_what, \
3632  ( void* exception ), \
3633  ( exception ), \
3634  return ) \
3635  \
3636  decl( \
3637  void, \
3638  apiObject_destructor, \
3639  (void* object), \
3640  (object), \
3641  ) \
3642  \
3643  \
3644  decl( \
3645  HPBlock*, \
3646  FacerecService_ProcessingBlock_createProcessingBlock, \
3647  ( \
3648  void* service, \
3649  const HContext* block_ptr, \
3650  void** out_exception \
3651  ), \
3652  ( \
3653  service, \
3654  block_ptr, \
3655  out_exception \
3656  ), \
3657  return ) \
3658  \
3659  \
3660  decl( \
3661  void, \
3662  TDV_convertYUV420_888ToNV21, \
3663  ( \
3664  const uint8_t* data, \
3665  int32_t width, \
3666  int32_t height, \
3667  int32_t bytesPerRow, \
3668  uint8_t* result, \
3669  uint64_t resultSize, \
3670  void** errorHandler \
3671  ), \
3672  ( \
3673  data, \
3674  width, \
3675  height, \
3676  bytesPerRow, \
3677  result, \
3678  resultSize, \
3679  errorHandler \
3680  ), \
3681  )
3682 
3683 // decl suppose to be a macro: decl(rtype, name, typed_args, args, return)
3684 #define __TDV_METASDK_FLIST(decl) \
3685  \
3686  decl( \
3687  void, \
3688  TDVProcessingBlock_processContext, \
3689  ( \
3690  HPBlock* block_ptr, \
3691  HContext* ctx_ptr, \
3692  ContextEH** out_exception \
3693  ), \
3694  ( \
3695  block_ptr, \
3696  ctx_ptr, \
3697  out_exception \
3698  ), \
3699  return ) \
3700  \
3701  \
3702  decl( \
3703  void, \
3704  TDVProcessingBlock_destroyBlock, \
3705  ( \
3706  HPBlock* block_ptr, \
3707  ContextEH** out_exception \
3708  ), \
3709  ( \
3710  block_ptr, \
3711  out_exception \
3712  ), \
3713  return ) \
3714  \
3715  \
3716  decl( \
3717  HContext*, \
3718  TDVContext_create, \
3719  ( \
3720  ContextEH** errorHandler \
3721  ), \
3722  ( \
3723  errorHandler \
3724  ), \
3725  return ) \
3726  \
3727  \
3728  decl( \
3729  void, \
3730  TDVContext_destroy, \
3731  ( \
3732  HContext* ctx, \
3733  ContextEH** errorHandler \
3734  ), \
3735  ( \
3736  ctx, \
3737  errorHandler \
3738  ), \
3739  return ) \
3740  \
3741  \
3742  decl( \
3743  HContext*, \
3744  TDVContext_createFromEncodedImage, \
3745  ( \
3746  const uint8_t* data, \
3747  uint64_t dataSize, \
3748  ContextEH** errorHandler \
3749  ), \
3750  ( \
3751  data, \
3752  dataSize, \
3753  errorHandler \
3754  ), \
3755  return ) \
3756  \
3757  \
3758  decl( \
3759  HContext*, \
3760  TDVContext_createFromFrame, \
3761  ( \
3762  uint8_t* data, \
3763  int32_t width, \
3764  int32_t height, \
3765  int32_t format, \
3766  int32_t baseAngle, \
3767  ContextEH** errorHandler \
3768  ), \
3769  ( \
3770  data, \
3771  width, \
3772  height, \
3773  format, \
3774  baseAngle, \
3775  errorHandler \
3776  ), \
3777  return ) \
3778  \
3779  \
3780  decl( \
3781  HContext*, \
3782  TDVContext_createFromJsonFile, \
3783  ( \
3784  const char* path, \
3785  ContextEH** errorHandler \
3786  ), \
3787  ( \
3788  path, \
3789  errorHandler \
3790  ), \
3791  return ) \
3792  \
3793  \
3794  decl( \
3795  void, \
3796  TDVContext_saveToJsonFile, \
3797  ( \
3798  HContext* ctx, \
3799  const char* path, \
3800  ContextEH** errorHandler \
3801  ), \
3802  ( \
3803  ctx, \
3804  path, \
3805  errorHandler \
3806  ), \
3807  return ) \
3808  \
3809  \
3810  decl( \
3811  HContext*, \
3812  TDVContext_getByIndex, \
3813  ( \
3814  HContext* ctx, \
3815  int key, \
3816  ContextEH** errorHandler \
3817  ), \
3818  ( \
3819  ctx, \
3820  key, \
3821  errorHandler \
3822  ), \
3823  return ) \
3824  \
3825  \
3826  decl( \
3827  HContext*, \
3828  TDVContext_getByKey, \
3829  ( \
3830  HContext* ctx, \
3831  const char* key, \
3832  ContextEH** errorHandler \
3833  ), \
3834  ( \
3835  ctx, \
3836  key, \
3837  errorHandler \
3838  ), \
3839  return ) \
3840  \
3841  \
3842  decl( \
3843  HContext*, \
3844  TDVContext_getOrInsertByKey, \
3845  ( \
3846  HContext* ctx, \
3847  const char* key, \
3848  ContextEH** errorHandler \
3849  ), \
3850  ( \
3851  ctx, \
3852  key, \
3853  errorHandler \
3854  ), \
3855  return ) \
3856  \
3857  \
3858  decl( \
3859  void, \
3860  TDVContext_copy, \
3861  ( \
3862  HContext* src, \
3863  HContext* dst, \
3864  ContextEH** errorHandler \
3865  ), \
3866  ( \
3867  src, \
3868  dst, \
3869  errorHandler \
3870  ), \
3871  return ) \
3872  \
3873  \
3874  decl( \
3875  HContext*, \
3876  TDVContext_clone, \
3877  ( \
3878  HContext* ctx, \
3879  ContextEH** errorHandler \
3880  ), \
3881  ( \
3882  ctx, \
3883  errorHandler \
3884  ), \
3885  return ) \
3886  \
3887  \
3888  decl( \
3889  HContext*, \
3890  TDVContext_clear, \
3891  ( \
3892  HContext* ctx, \
3893  ContextEH** errorHandler \
3894  ), \
3895  ( \
3896  ctx, \
3897  errorHandler \
3898  ), \
3899  return ) \
3900  \
3901  \
3902  decl( \
3903  void, \
3904  TDVContext_erase, \
3905  ( \
3906  HContext* ctx, \
3907  const char* key, \
3908  ContextEH** errorHandler \
3909  ), \
3910  ( \
3911  ctx, \
3912  errorHandler \
3913  ), \
3914  return ) \
3915  \
3916  \
3917  decl( \
3918  void, \
3919  TDVContext_reserve, \
3920  ( \
3921  HContext* ctx, \
3922  const uint64_t size, \
3923  ContextEH** errorHandler \
3924  ), \
3925  ( \
3926  ctx, \
3927  errorHandler \
3928  ), \
3929  return ) \
3930  \
3931  \
3932  decl( \
3933  bool, \
3934  TDVContext_contains, \
3935  ( \
3936  HContext* ctx, \
3937  const char* key, \
3938  ContextEH** errorHandler \
3939  ), \
3940  ( \
3941  ctx, \
3942  errorHandler \
3943  ), \
3944  return ) \
3945  \
3946  \
3947  decl( \
3948  bool, \
3949  TDVContext_empty, \
3950  ( \
3951  HContext* ctx, \
3952  ContextEH** errorHandler \
3953  ), \
3954  ( \
3955  ctx, \
3956  errorHandler \
3957  ), \
3958  return ) \
3959  \
3960  \
3961  decl( \
3962  bool, \
3963  TDVContext_compare, \
3964  ( \
3965  HContext* ctx, \
3966  HContext* ctx2, \
3967  ContextEH** errorHandler \
3968  ), \
3969  ( \
3970  ctx, \
3971  errorHandler \
3972  ), \
3973  return ) \
3974  \
3975  \
3976  decl( \
3977  void, \
3978  TDVContext_putStr, \
3979  ( \
3980  HContext* ctx, \
3981  const char* str, \
3982  ContextEH** errorHandler \
3983  ), \
3984  ( \
3985  ctx, \
3986  str, \
3987  errorHandler \
3988  ), \
3989  return ) \
3990  \
3991  \
3992  decl( \
3993  void, \
3994  TDVContext_putLong, \
3995  ( \
3996  HContext* ctx, \
3997  int64_t val, \
3998  ContextEH** errorHandler \
3999  ), \
4000  ( \
4001  ctx, \
4002  val, \
4003  errorHandler \
4004  ), \
4005  return ) \
4006  \
4007  \
4008  decl( \
4009  void, \
4010  TDVContext_putDouble, \
4011  ( \
4012  HContext* ctx, \
4013  double val, \
4014  ContextEH** errorHandler \
4015  ), \
4016  ( \
4017  ctx, \
4018  val, \
4019  errorHandler \
4020  ), \
4021  return ) \
4022  \
4023  \
4024  decl( \
4025  void, \
4026  TDVContext_putBool, \
4027  ( \
4028  HContext* ctx, \
4029  bool val, \
4030  ContextEH** errorHandler \
4031  ), \
4032  ( \
4033  ctx, \
4034  val, \
4035  errorHandler \
4036  ), \
4037  return ) \
4038  \
4039  \
4040  decl( \
4041  unsigned char*, \
4042  TDVContext_allocDataPtr, \
4043  ( \
4044  HContext* ctx, \
4045  uint64_t size, \
4046  ContextEH** errorHandler \
4047  ), \
4048  ( \
4049  ctx, \
4050  size, \
4051  errorHandler \
4052  ), \
4053  return ) \
4054  \
4055  \
4056  decl( \
4057  unsigned char*, \
4058  TDVContext_putDataPtr, \
4059  ( \
4060  HContext* ctx, \
4061  unsigned char* val, \
4062  uint64_t copy_sz, \
4063  ContextEH** errorHandler \
4064  ), \
4065  ( \
4066  ctx, \
4067  val, \
4068  copy_sz, \
4069  errorHandler \
4070  ), \
4071  return ) \
4072  \
4073  \
4074  decl( \
4075  unsigned char*, \
4076  TDVContext_putConstDataPtr, \
4077  ( \
4078  HContext* ctx, \
4079  const unsigned char* val, \
4080  uint64_t copy_sz, \
4081  ContextEH** errorHandler \
4082  ), \
4083  ( \
4084  ctx, \
4085  val, \
4086  copy_sz, \
4087  errorHandler \
4088  ), \
4089  return ) \
4090  \
4091  \
4092  decl( \
4093  void, \
4094  TDVContext_putDynamicTemplateIndex, \
4095  ( \
4096  HContext* context, \
4097  void* value, \
4098  ContextEH** errorHandler \
4099  ), \
4100  ( \
4101  context, \
4102  value, \
4103  errorHandler \
4104  ), \
4105  return ) \
4106  \
4107  \
4108  decl( \
4109  void, \
4110  TDVContext_putContextTemplate, \
4111  ( \
4112  HContext* context, \
4113  void* value, \
4114  ContextEH** errorHandler \
4115  ), \
4116  ( \
4117  context, \
4118  value, \
4119  errorHandler \
4120  ), \
4121  return ) \
4122  \
4123  \
4124  decl( \
4125  void, \
4126  TDVContext_pushBack, \
4127  ( \
4128  HContext* ctx, \
4129  void* data, \
4130  bool copy, \
4131  ContextEH** errorHandler \
4132  ), \
4133  ( \
4134  ctx, \
4135  data, \
4136  copy, \
4137  errorHandler \
4138  ), \
4139  return ) \
4140  \
4141  \
4142  decl( \
4143  uint64_t, \
4144  TDVContext_getLength, \
4145  ( \
4146  HContext* ctx, \
4147  ContextEH** errorHandler \
4148  ), \
4149  ( \
4150  ctx, \
4151  errorHandler \
4152  ), \
4153  return ) \
4154  \
4155  \
4156  decl( \
4157  char**, \
4158  TDVContext_getKeys, \
4159  ( \
4160  HContext* ctx, \
4161  uint64_t length, \
4162  ContextEH** errorHandler \
4163  ), \
4164  ( \
4165  ctx, \
4166  length, \
4167  errorHandler \
4168  ), \
4169  return ) \
4170  \
4171  \
4172  decl( \
4173  bool, \
4174  TDVContext_isNone, \
4175  ( \
4176  HContext* ctx, \
4177  ContextEH** errorHandler \
4178  ), \
4179  ( \
4180  ctx, \
4181  errorHandler \
4182  ), \
4183  return ) \
4184  \
4185  \
4186  decl( \
4187  bool, \
4188  TDVContext_isArray, \
4189  ( \
4190  HContext* ctx, \
4191  ContextEH** errorHandler \
4192  ), \
4193  ( \
4194  ctx, \
4195  errorHandler \
4196  ), \
4197  return ) \
4198  \
4199  \
4200  decl( \
4201  bool, \
4202  TDVContext_isObject, \
4203  ( \
4204  HContext* ctx, \
4205  ContextEH** errorHandler \
4206  ), \
4207  ( \
4208  ctx, \
4209  errorHandler \
4210  ), \
4211  return ) \
4212  \
4213  \
4214  decl( \
4215  bool, \
4216  TDVContext_isBool, \
4217  ( \
4218  HContext* ctx, \
4219  ContextEH** errorHandler \
4220  ), \
4221  ( \
4222  ctx, \
4223  errorHandler \
4224  ), \
4225  return ) \
4226  \
4227  \
4228  decl( \
4229  bool, \
4230  TDVContext_isLong, \
4231  ( \
4232  HContext* ctx, \
4233  ContextEH** errorHandler \
4234  ), \
4235  ( \
4236  ctx, \
4237  errorHandler \
4238  ), \
4239  return ) \
4240  \
4241  \
4242  decl( \
4243  bool, \
4244  TDVContext_isDouble, \
4245  ( \
4246  HContext* ctx, \
4247  ContextEH** errorHandler \
4248  ), \
4249  ( \
4250  ctx, \
4251  errorHandler \
4252  ), \
4253  return ) \
4254  \
4255  \
4256  decl( \
4257  bool, \
4258  TDVContext_isString, \
4259  ( \
4260  HContext* ctx, \
4261  ContextEH** errorHandler \
4262  ), \
4263  ( \
4264  ctx, \
4265  errorHandler \
4266  ), \
4267  return ) \
4268  \
4269  \
4270  decl( \
4271  bool, \
4272  TDVContext_isDataPtr, \
4273  ( \
4274  HContext* ctx, \
4275  ContextEH** errorHandler \
4276  ), \
4277  ( \
4278  ctx, \
4279  errorHandler \
4280  ), \
4281  return ) \
4282  \
4283  \
4284  decl( \
4285  bool, \
4286  TDVContext_isDynamicTemplateIndex, \
4287  ( \
4288  HContext* ctx, \
4289  ContextEH** errorHandler \
4290  ), \
4291  ( \
4292  ctx, \
4293  errorHandler \
4294  ), \
4295  return ) \
4296  \
4297  \
4298  decl( \
4299  bool, \
4300  TDVContext_isContextTemplate, \
4301  ( \
4302  HContext* ctx, \
4303  ContextEH** errorHandler \
4304  ), \
4305  ( \
4306  ctx, \
4307  errorHandler \
4308  ), \
4309  return ) \
4310  \
4311  \
4312  decl( \
4313  const char*, \
4314  TDVContext_getStr, \
4315  ( \
4316  HContext* ctx, \
4317  char* buff, \
4318  ContextEH** errorHandler \
4319  ), \
4320  ( \
4321  ctx, \
4322  buff, \
4323  errorHandler \
4324  ), \
4325  return ) \
4326  \
4327  \
4328  decl( \
4329  uint64_t, \
4330  TDVContext_getStrSize, \
4331  ( \
4332  HContext* ctx, \
4333  ContextEH** errorHandler \
4334  ), \
4335  ( \
4336  ctx, \
4337  errorHandler \
4338  ), \
4339  return ) \
4340  \
4341  \
4342  decl( \
4343  void, \
4344  TDVContext_freePtr, \
4345  ( \
4346  void* ptr \
4347  ), \
4348  ( \
4349  ptr \
4350  ), \
4351  return ) \
4352  \
4353  \
4354  decl( \
4355  int64_t, \
4356  TDVContext_getLong, \
4357  ( \
4358  HContext* ctx, \
4359  ContextEH** errorHandler \
4360  ), \
4361  ( \
4362  ctx, \
4363  errorHandler \
4364  ), \
4365  return ) \
4366  \
4367  \
4368  decl( \
4369  double, \
4370  TDVContext_getDouble, \
4371  ( \
4372  HContext* ctx, \
4373  ContextEH** errorHandler \
4374  ), \
4375  ( \
4376  ctx, \
4377  errorHandler \
4378  ), \
4379  return ) \
4380  \
4381  \
4382  decl( \
4383  bool, \
4384  TDVContext_getBool, \
4385  ( \
4386  HContext* ctx, \
4387  ContextEH** errorHandler \
4388  ), \
4389  ( \
4390  ctx, \
4391  errorHandler \
4392  ), \
4393  return ) \
4394  \
4395  \
4396  decl( \
4397  unsigned char*, \
4398  TDVContext_getDataPtr, \
4399  ( \
4400  HContext* ctx, \
4401  ContextEH** errorHandler \
4402  ), \
4403  ( \
4404  ctx, \
4405  errorHandler \
4406  ), \
4407  return ) \
4408  \
4409  \
4410  decl( \
4411  void*, \
4412  TDVContext_getDynamicTemplateIndex, \
4413  ( \
4414  HContext* ctx, \
4415  ContextEH** errorHandler \
4416  ), \
4417  ( \
4418  ctx, \
4419  errorHandler \
4420  ), \
4421  return ) \
4422  \
4423  \
4424  decl( \
4425  void*, \
4426  TDVContext_getContextTemplate, \
4427  ( \
4428  HContext* ctx, \
4429  ContextEH** errorHandler \
4430  ), \
4431  ( \
4432  ctx, \
4433  errorHandler \
4434  ), \
4435  return ) \
4436  \
4437  \
4438  decl( \
4439  const char*, \
4440  TDVException_getMessage, \
4441  ( \
4442  ContextEH* errorHandler \
4443  ), \
4444  ( \
4445  errorHandler \
4446  ), \
4447  return ) \
4448  \
4449  \
4450  decl( \
4451  unsigned int, \
4452  TDVException_getErrorCode, \
4453  ( \
4454  ContextEH* errorHandler \
4455  ), \
4456  ( \
4457  errorHandler \
4458  ), \
4459  return ) \
4460  \
4461  \
4462  decl( \
4463  void, \
4464  TDVException_deleteException, \
4465  ( \
4466  ContextEH* errorHandler \
4467  ), \
4468  ( \
4469  errorHandler \
4470  ), \
4471  return )
4472 
4473 #endif // __pbio__imp_exp_macro_1bcdd890e87a41b786dfa83f9c4236ad