source $GRIMOIRE/config_query_multi.function
config_query_multi CV_CONTRIB_A_N "Which contributed modules A..N" none \
 alphamat bgsegm bioinspired cannops ccalib cnn_3dobj cudev cvv datasets dnn_objdetect dnn_superres \
 dnns_easily_fooled dpm face fastcv freetype fuzzy gapi hdf hfs img_hash intensity_transform julia \
 line_descriptor matlab ml &&

config_query_multi CV_CONTRIB_O_Z "Which contributed modules O..Z" none \
 optflow ovis phase_unwrapping plot quality rapid reg rgbd saliency sfm shape signal structured_light \
 superres surface_matching text tracking videostab viz wechat_qrcode xfeatures2d ximgproc xobjdetect \
 xphoto &&

config_query_multi CV_CONTRIB_CUDA "Which contributed modules CUDA" none \
 cudaarithm cudabgsegm cudacodec cudafeatures2d cudafilters cudaimgproc cudalegacy cudaobjdetect \
 cudaoptflow cudastereo cudawarping &&

# now combine them
persistent_remove CV_CONTRIB &&
persistent_add CV_CONTRIB &&
if [[ $CV_CONTRIB_A_N != none ]];then
  CV_CONTRIB+="$CV_CONTRIB_A_N"
fi &&
if [[ $CV_CONTRIB_O_Z != none ]];then
  CV_CONTRIB+=" $CV_CONTRIB_O_Z"
fi
if [[ $CV_CONTRIB_CUDA != none ]];then
  CV_CONTRIB+=" $CV_CONTRIB_CUDA"
fi

