#include #include #include #include #include #include const Lardon3DTaskKindRegistry *lardon3d_task_kind_registry_production(void) { static const Lardon3DTaskKindDescriptor descriptors[] = { { .kind = LARDON3D_IMAGE_IMPORT_TASK_KIND, .kind_version = LARDON3D_IMAGE_IMPORT_TASK_KIND_VERSION, .reconstruct = lardon3d_image_import_reconstruct, }, { .kind = LARDON3D_FEATURE_EXTRACT_TASK_KIND, .kind_version = LARDON3D_FEATURE_EXTRACT_TASK_KIND_VERSION, .reconstruct = lardon3d_feature_extract_reconstruct, }, { .kind = LARDON3D_SIFT_EXTRACT_TASK_KIND, .kind_version = LARDON3D_SIFT_EXTRACT_TASK_KIND_VERSION, .reconstruct = lardon3d_sift_extract_reconstruct, }, { .kind = LARDON3D_ROOTSIFT_EXTRACT_TASK_KIND, .kind_version = LARDON3D_SIFT_EXTRACT_TASK_KIND_VERSION, .reconstruct = lardon3d_sift_extract_reconstruct, }, { .kind = LARDON3D_VISUAL_INDEX_UPDATE_TASK_KIND, .kind_version = LARDON3D_VISUAL_INDEX_UPDATE_TASK_KIND_VERSION, .reconstruct = lardon3d_visual_index_update_reconstruct, }, { .kind = LARDON3D_CANDIDATE_PAIR_GENERATE_TASK_KIND, .kind_version = LARDON3D_CANDIDATE_PAIR_GENERATE_TASK_KIND_VERSION, .reconstruct = lardon3d_candidate_pair_generate_reconstruct, }}; static const Lardon3DTaskKindRegistry registry = { .descriptors = descriptors, .count = sizeof(descriptors) / sizeof(descriptors[0]), }; return ®istry; }