charles macneill / VL53L1CB
Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers vl53l1_api_preset_modes.h Source File

vl53l1_api_preset_modes.h

00001 
00002 /*******************************************************************************
00003  * Copyright (c) 2020, STMicroelectronics - All Rights Reserved
00004 
00005  This file is part of VL53L1 Core and is dual licensed,
00006  either 'STMicroelectronics
00007  Proprietary license'
00008  or 'BSD 3-clause "New" or "Revised" License' , at your option.
00009 
00010 ********************************************************************************
00011 
00012  'STMicroelectronics Proprietary license'
00013 
00014 ********************************************************************************
00015 
00016  License terms: STMicroelectronics Proprietary in accordance with licensing
00017  terms at www.st.com/sla0081
00018 
00019  STMicroelectronics confidential
00020  Reproduction and Communication of this document is strictly prohibited unless
00021  specifically authorized in writing by STMicroelectronics.
00022 
00023 
00024 ********************************************************************************
00025 
00026  Alternatively, VL53L1 Core may be distributed under the terms of
00027  'BSD 3-clause "New" or "Revised" License', in which case the following
00028  provisions apply instead of the ones
00029  mentioned above :
00030 
00031 ********************************************************************************
00032 
00033  License terms: BSD 3-clause "New" or "Revised" License.
00034 
00035  Redistribution and use in source and binary forms, with or without
00036  modification, are permitted provided that the following conditions are met:
00037 
00038  1. Redistributions of source code must retain the above copyright notice, this
00039  list of conditions and the following disclaimer.
00040 
00041  2. Redistributions in binary form must reproduce the above copyright notice,
00042  this list of conditions and the following disclaimer in the documentation
00043  and/or other materials provided with the distribution.
00044 
00045  3. Neither the name of the copyright holder nor the names of its contributors
00046  may be used to endorse or promote products derived from this software
00047  without specific prior written permission.
00048 
00049  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
00050  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
00051  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
00052  DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
00053  FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
00054  DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
00055  SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
00056  CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
00057  OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
00058  OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00059 
00060 
00061 ********************************************************************************
00062 
00063 */
00064 
00065 
00066 
00067 
00068 #ifndef _VL53L1_API_PRESET_MODES_H_
00069 #define _VL53L1_API_PRESET_MODES_H_
00070 
00071 #include "vl53l1_ll_def.h"
00072 #include "vl53l1_dmax_structs.h"
00073 
00074 #ifdef __cplusplus
00075 extern "C" {
00076 #endif
00077 
00078 
00079 
00080 
00081 VL53L1_Error VL53L1_init_refspadchar_config_struct(
00082     VL53L1_refspadchar_config_t     *pdata);
00083 
00084 
00085 
00086 
00087 VL53L1_Error VL53L1_init_ssc_config_struct(
00088     VL53L1_ssc_config_t     *pdata);
00089 
00090 
00091 
00092 
00093 VL53L1_Error VL53L1_init_xtalk_config_struct(
00094         VL53L1_customer_nvm_managed_t *pnvm,
00095         VL53L1_xtalk_config_t   *pdata);
00096 
00097 
00098 
00099 VL53L1_Error VL53L1_init_xtalk_extract_config_struct(
00100         VL53L1_xtalkextract_config_t   *pdata);
00101 
00102 
00103 
00104 VL53L1_Error VL53L1_init_offset_cal_config_struct(
00105     VL53L1_offsetcal_config_t   *pdata);
00106 
00107 
00108 
00109 VL53L1_Error VL53L1_init_zone_cal_config_struct(
00110     VL53L1_zonecal_config_t   *pdata);
00111 
00112 
00113 
00114 VL53L1_Error VL53L1_init_hist_post_process_config_struct(
00115     uint8_t                              xtalk_compensation_enable,
00116     VL53L1_hist_post_process_config_t   *pdata);
00117 
00118 
00119 
00120 
00121 VL53L1_Error VL53L1_init_dmax_calibration_data_struct(
00122     VL53L1_dmax_calibration_data_t   *pdata);
00123 
00124 
00125 
00126 
00127 VL53L1_Error VL53L1_init_tuning_parm_storage_struct(
00128     VL53L1_tuning_parm_storage_t   *pdata);
00129 
00130 
00131 
00132 VL53L1_Error VL53L1_init_hist_gen3_dmax_config_struct(
00133     VL53L1_hist_gen3_dmax_config_t   *pdata);
00134 
00135 
00136 
00137 
00138 VL53L1_Error VL53L1_preset_mode_standard_ranging(
00139     VL53L1_static_config_t     *pstatic,
00140     VL53L1_histogram_config_t  *phistogram,
00141     VL53L1_general_config_t    *pgeneral,
00142     VL53L1_timing_config_t     *ptiming,
00143     VL53L1_dynamic_config_t    *pdynamic,
00144     VL53L1_system_control_t    *psystem,
00145     VL53L1_tuning_parm_storage_t *ptuning_parms,
00146     VL53L1_zone_config_t       *pzone_cfg);
00147 
00148 
00149 
00150 VL53L1_Error VL53L1_preset_mode_standard_ranging_short_range(
00151     VL53L1_static_config_t     *pstatic,
00152     VL53L1_histogram_config_t  *phistogram,
00153     VL53L1_general_config_t    *pgeneral,
00154     VL53L1_timing_config_t     *ptiming,
00155     VL53L1_dynamic_config_t    *pdynamic,
00156     VL53L1_system_control_t    *psystem,
00157     VL53L1_tuning_parm_storage_t *ptuning_parms,
00158     VL53L1_zone_config_t       *pzone_cfg);
00159 
00160 
00161 
00162 
00163 VL53L1_Error VL53L1_preset_mode_standard_ranging_long_range(
00164     VL53L1_static_config_t     *pstatic,
00165     VL53L1_histogram_config_t  *phistogram,
00166     VL53L1_general_config_t    *pgeneral,
00167     VL53L1_timing_config_t     *ptiming,
00168     VL53L1_dynamic_config_t    *pdynamic,
00169     VL53L1_system_control_t    *psystem,
00170     VL53L1_tuning_parm_storage_t *ptuning_parms,
00171     VL53L1_zone_config_t       *pzone_cfg);
00172 
00173 
00174 
00175 
00176 VL53L1_Error VL53L1_preset_mode_standard_ranging_mm1_cal(
00177     VL53L1_static_config_t     *pstatic,
00178     VL53L1_histogram_config_t  *phistogram,
00179     VL53L1_general_config_t    *pgeneral,
00180     VL53L1_timing_config_t     *ptiming,
00181     VL53L1_dynamic_config_t    *pdynamic,
00182     VL53L1_system_control_t    *psystem,
00183     VL53L1_tuning_parm_storage_t *ptuning_parms,
00184     VL53L1_zone_config_t       *pzone_cfg);
00185 
00186 
00187 
00188 
00189 VL53L1_Error VL53L1_preset_mode_standard_ranging_mm2_cal(
00190     VL53L1_static_config_t     *pstatic,
00191     VL53L1_histogram_config_t  *phistogram,
00192     VL53L1_general_config_t    *pgeneral,
00193     VL53L1_timing_config_t     *ptiming,
00194     VL53L1_dynamic_config_t    *pdynamic,
00195     VL53L1_system_control_t    *psystem,
00196     VL53L1_tuning_parm_storage_t *ptuning_parms,
00197     VL53L1_zone_config_t       *pzone_cfg);
00198 
00199 
00200 
00201 
00202 VL53L1_Error VL53L1_preset_mode_timed_ranging(
00203 
00204     VL53L1_static_config_t    *pstatic,
00205     VL53L1_histogram_config_t *phistogram,
00206     VL53L1_general_config_t   *pgeneral,
00207     VL53L1_timing_config_t    *ptiming,
00208     VL53L1_dynamic_config_t   *pdynamic,
00209     VL53L1_system_control_t   *psystem,
00210     VL53L1_tuning_parm_storage_t *ptuning_parms,
00211     VL53L1_zone_config_t      *pzone_cfg);
00212 
00213 
00214 
00215 VL53L1_Error VL53L1_preset_mode_timed_ranging_short_range(
00216 
00217     VL53L1_static_config_t    *pstatic,
00218     VL53L1_histogram_config_t *phistogram,
00219     VL53L1_general_config_t   *pgeneral,
00220     VL53L1_timing_config_t    *ptiming,
00221     VL53L1_dynamic_config_t   *pdynamic,
00222     VL53L1_system_control_t   *psystem,
00223     VL53L1_tuning_parm_storage_t *ptuning_parms,
00224     VL53L1_zone_config_t      *pzone_cfg);
00225 
00226 
00227 
00228 VL53L1_Error VL53L1_preset_mode_timed_ranging_long_range(
00229 
00230     VL53L1_static_config_t    *pstatic,
00231     VL53L1_histogram_config_t *phistogram,
00232     VL53L1_general_config_t   *pgeneral,
00233     VL53L1_timing_config_t    *ptiming,
00234     VL53L1_dynamic_config_t   *pdynamic,
00235     VL53L1_system_control_t   *psystem,
00236     VL53L1_tuning_parm_storage_t *ptuning_parms,
00237     VL53L1_zone_config_t      *pzone_cfg);
00238 
00239 
00240 
00241 VL53L1_Error VL53L1_preset_mode_low_power_auto_ranging(
00242 
00243     VL53L1_static_config_t    *pstatic,
00244     VL53L1_histogram_config_t *phistogram,
00245     VL53L1_general_config_t   *pgeneral,
00246     VL53L1_timing_config_t    *ptiming,
00247     VL53L1_dynamic_config_t   *pdynamic,
00248     VL53L1_system_control_t   *psystem,
00249     VL53L1_tuning_parm_storage_t *ptuning_parms,
00250     VL53L1_zone_config_t      *pzone_cfg,
00251     VL53L1_low_power_auto_data_t *plpadata);
00252 
00253 
00254 
00255 VL53L1_Error VL53L1_preset_mode_low_power_auto_short_ranging(
00256 
00257     VL53L1_static_config_t    *pstatic,
00258     VL53L1_histogram_config_t *phistogram,
00259     VL53L1_general_config_t   *pgeneral,
00260     VL53L1_timing_config_t    *ptiming,
00261     VL53L1_dynamic_config_t   *pdynamic,
00262     VL53L1_system_control_t   *psystem,
00263     VL53L1_tuning_parm_storage_t *ptuning_parms,
00264     VL53L1_zone_config_t      *pzone_cfg,
00265     VL53L1_low_power_auto_data_t *plpadata);
00266 
00267 
00268 
00269 VL53L1_Error VL53L1_preset_mode_low_power_auto_long_ranging(
00270 
00271     VL53L1_static_config_t    *pstatic,
00272     VL53L1_histogram_config_t *phistogram,
00273     VL53L1_general_config_t   *pgeneral,
00274     VL53L1_timing_config_t    *ptiming,
00275     VL53L1_dynamic_config_t   *pdynamic,
00276     VL53L1_system_control_t   *psystem,
00277     VL53L1_tuning_parm_storage_t *ptuning_parms,
00278     VL53L1_zone_config_t      *pzone_cfg,
00279     VL53L1_low_power_auto_data_t *plpadata);
00280 
00281 
00282 
00283 VL53L1_Error VL53L1_preset_mode_histogram_ranging(
00284     VL53L1_hist_post_process_config_t *phistpostprocess,
00285     VL53L1_static_config_t            *pstatic,
00286     VL53L1_histogram_config_t         *phistogram,
00287     VL53L1_general_config_t           *pgeneral,
00288     VL53L1_timing_config_t            *ptiming,
00289     VL53L1_dynamic_config_t           *pdynamic,
00290     VL53L1_system_control_t           *psystem,
00291     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00292     VL53L1_zone_config_t              *pzone_cfg);
00293 
00294 
00295 
00296 
00297 VL53L1_Error VL53L1_preset_mode_histogram_ranging_with_mm1(
00298     VL53L1_hist_post_process_config_t *phistpostprocess,
00299     VL53L1_static_config_t            *pstatic,
00300     VL53L1_histogram_config_t         *phistogram,
00301     VL53L1_general_config_t           *pgeneral,
00302     VL53L1_timing_config_t            *ptiming,
00303     VL53L1_dynamic_config_t           *pdynamic,
00304     VL53L1_system_control_t           *psystem,
00305     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00306     VL53L1_zone_config_t              *pzone_cfg);
00307 
00308 
00309 
00310 
00311 VL53L1_Error VL53L1_preset_mode_histogram_ranging_with_mm2(
00312     VL53L1_hist_post_process_config_t *phistpostprocess,
00313     VL53L1_static_config_t            *pstatic,
00314     VL53L1_histogram_config_t         *phistogram,
00315     VL53L1_general_config_t           *pgeneral,
00316     VL53L1_timing_config_t            *ptiming,
00317     VL53L1_dynamic_config_t           *pdynamic,
00318     VL53L1_system_control_t           *psystem,
00319     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00320     VL53L1_zone_config_t              *pzone_cfg);
00321 
00322 
00323 
00324 
00325 VL53L1_Error VL53L1_preset_mode_histogram_ranging_mm1_cal(
00326     VL53L1_hist_post_process_config_t *phistpostprocess,
00327     VL53L1_static_config_t            *pstatic,
00328     VL53L1_histogram_config_t         *phistogram,
00329     VL53L1_general_config_t           *pgeneral,
00330     VL53L1_timing_config_t            *ptiming,
00331     VL53L1_dynamic_config_t           *pdynamic,
00332     VL53L1_system_control_t           *psystem,
00333     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00334     VL53L1_zone_config_t              *pzone_cfg);
00335 
00336 
00337 
00338 
00339 VL53L1_Error VL53L1_preset_mode_histogram_ranging_mm2_cal(
00340     VL53L1_hist_post_process_config_t *phistpostprocess,
00341     VL53L1_static_config_t            *pstatic,
00342     VL53L1_histogram_config_t         *phistogram,
00343     VL53L1_general_config_t           *pgeneral,
00344     VL53L1_timing_config_t            *ptiming,
00345     VL53L1_dynamic_config_t           *pdynamic,
00346     VL53L1_system_control_t           *psystem,
00347     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00348     VL53L1_zone_config_t              *pzone_cfg);
00349 
00350 
00351 
00352 
00353 VL53L1_Error VL53L1_preset_mode_histogram_ranging_ref(
00354     VL53L1_hist_post_process_config_t *phistpostprocess,
00355     VL53L1_static_config_t            *pstatic,
00356     VL53L1_histogram_config_t         *phistogram,
00357     VL53L1_general_config_t           *pgeneral,
00358     VL53L1_timing_config_t            *ptiming,
00359     VL53L1_dynamic_config_t           *pdynamic,
00360     VL53L1_system_control_t           *psystem,
00361     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00362     VL53L1_zone_config_t              *pzone_cfg);
00363 
00364 
00365 
00366 VL53L1_Error VL53L1_preset_mode_histogram_characterisation(
00367     VL53L1_hist_post_process_config_t *phistpostprocess,
00368     VL53L1_static_config_t            *pstatic,
00369     VL53L1_histogram_config_t         *phistogram,
00370     VL53L1_general_config_t           *pgeneral,
00371     VL53L1_timing_config_t            *ptiming,
00372     VL53L1_dynamic_config_t           *pdynamic,
00373     VL53L1_system_control_t           *psystem,
00374     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00375     VL53L1_zone_config_t              *pzone_cfg);
00376 
00377 
00378 
00379 
00380 VL53L1_Error VL53L1_preset_mode_histogram_xtalk_planar(
00381     VL53L1_hist_post_process_config_t *phistpostprocess,
00382     VL53L1_static_config_t            *pstatic,
00383     VL53L1_histogram_config_t         *phistogram,
00384     VL53L1_general_config_t           *pgeneral,
00385     VL53L1_timing_config_t            *ptiming,
00386     VL53L1_dynamic_config_t           *pdynamic,
00387     VL53L1_system_control_t           *psystem,
00388     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00389     VL53L1_zone_config_t              *pzone_cfg);
00390 
00391 
00392 
00393 
00394 VL53L1_Error VL53L1_preset_mode_histogram_xtalk_mm1(
00395     VL53L1_hist_post_process_config_t *phistpostprocess,
00396     VL53L1_static_config_t            *pstatic,
00397     VL53L1_histogram_config_t         *phistogram,
00398     VL53L1_general_config_t           *pgeneral,
00399     VL53L1_timing_config_t            *ptiming,
00400     VL53L1_dynamic_config_t           *pdynamic,
00401     VL53L1_system_control_t           *psystem,
00402     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00403     VL53L1_zone_config_t              *pzone_cfg);
00404 
00405 
00406 
00407 
00408 VL53L1_Error VL53L1_preset_mode_histogram_xtalk_mm2(
00409     VL53L1_hist_post_process_config_t *phistpostprocess,
00410     VL53L1_static_config_t            *pstatic,
00411     VL53L1_histogram_config_t         *phistogram,
00412     VL53L1_general_config_t           *pgeneral,
00413     VL53L1_timing_config_t            *ptiming,
00414     VL53L1_dynamic_config_t           *pdynamic,
00415     VL53L1_system_control_t           *psystem,
00416     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00417     VL53L1_zone_config_t              *pzone_cfg);
00418 
00419 
00420 
00421 VL53L1_Error VL53L1_preset_mode_histogram_multizone(
00422     VL53L1_hist_post_process_config_t *phistpostprocess,
00423     VL53L1_static_config_t            *pstatic,
00424     VL53L1_histogram_config_t         *phistogram,
00425     VL53L1_general_config_t           *pgeneral,
00426     VL53L1_timing_config_t            *ptiming,
00427     VL53L1_dynamic_config_t           *pdynamic,
00428     VL53L1_system_control_t           *psystem,
00429     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00430     VL53L1_zone_config_t              *pzone_cfg);
00431 
00432 
00433 
00434 VL53L1_Error VL53L1_preset_mode_histogram_multizone_short_range(
00435     VL53L1_hist_post_process_config_t *phistpostprocess,
00436     VL53L1_static_config_t            *pstatic,
00437     VL53L1_histogram_config_t         *phistogram,
00438     VL53L1_general_config_t           *pgeneral,
00439     VL53L1_timing_config_t            *ptiming,
00440     VL53L1_dynamic_config_t           *pdynamic,
00441     VL53L1_system_control_t           *psystem,
00442     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00443     VL53L1_zone_config_t              *pzone_cfg);
00444 
00445 
00446 
00447 VL53L1_Error VL53L1_preset_mode_histogram_multizone_long_range(
00448     VL53L1_hist_post_process_config_t *phistpostprocess,
00449     VL53L1_static_config_t            *pstatic,
00450     VL53L1_histogram_config_t         *phistogram,
00451     VL53L1_general_config_t           *pgeneral,
00452     VL53L1_timing_config_t            *ptiming,
00453     VL53L1_dynamic_config_t           *pdynamic,
00454     VL53L1_system_control_t           *psystem,
00455     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00456     VL53L1_zone_config_t              *pzone_cfg);
00457 
00458 
00459 
00460 VL53L1_Error VL53L1_preset_mode_histogram_ranging_short_timing(
00461     VL53L1_hist_post_process_config_t *phistpostprocess,
00462     VL53L1_static_config_t            *pstatic,
00463     VL53L1_histogram_config_t         *phistogram,
00464     VL53L1_general_config_t           *pgeneral,
00465     VL53L1_timing_config_t            *ptiming,
00466     VL53L1_dynamic_config_t           *pdynamic,
00467     VL53L1_system_control_t           *psystem,
00468     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00469     VL53L1_zone_config_t              *pzone_cfg);
00470 
00471 
00472 
00473 VL53L1_Error VL53L1_preset_mode_histogram_long_range(
00474     VL53L1_hist_post_process_config_t *phistpostprocess,
00475     VL53L1_static_config_t            *pstatic,
00476     VL53L1_histogram_config_t         *phistogram,
00477     VL53L1_general_config_t           *pgeneral,
00478     VL53L1_timing_config_t            *ptiming,
00479     VL53L1_dynamic_config_t           *pdynamic,
00480     VL53L1_system_control_t           *psystem,
00481     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00482     VL53L1_zone_config_t              *pzone_cfg);
00483 
00484 
00485 
00486 VL53L1_Error VL53L1_preset_mode_histogram_medium_range(
00487     VL53L1_hist_post_process_config_t *phistpostprocess,
00488     VL53L1_static_config_t            *pstatic,
00489     VL53L1_histogram_config_t         *phistogram,
00490     VL53L1_general_config_t           *pgeneral,
00491     VL53L1_timing_config_t            *ptiming,
00492     VL53L1_dynamic_config_t           *pdynamic,
00493     VL53L1_system_control_t           *psystem,
00494     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00495     VL53L1_zone_config_t              *pzone_cfg);
00496 
00497 
00498 
00499 VL53L1_Error VL53L1_preset_mode_histogram_short_range(
00500     VL53L1_hist_post_process_config_t *phistpostprocess,
00501     VL53L1_static_config_t            *pstatic,
00502     VL53L1_histogram_config_t         *phistogram,
00503     VL53L1_general_config_t           *pgeneral,
00504     VL53L1_timing_config_t            *ptiming,
00505     VL53L1_dynamic_config_t           *pdynamic,
00506     VL53L1_system_control_t           *psystem,
00507     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00508     VL53L1_zone_config_t              *pzone_cfg);
00509 
00510 
00511 
00512 VL53L1_Error VL53L1_preset_mode_special_histogram_short_range(
00513     VL53L1_hist_post_process_config_t *phistpostprocess,
00514     VL53L1_static_config_t            *pstatic,
00515     VL53L1_histogram_config_t         *phistogram,
00516     VL53L1_general_config_t           *pgeneral,
00517     VL53L1_timing_config_t            *ptiming,
00518     VL53L1_dynamic_config_t           *pdynamic,
00519     VL53L1_system_control_t           *psystem,
00520     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00521     VL53L1_zone_config_t              *pzone_cfg);
00522 
00523 
00524 
00525 VL53L1_Error VL53L1_preset_mode_histogram_long_range_mm1(
00526     VL53L1_hist_post_process_config_t *phistpostprocess,
00527     VL53L1_static_config_t            *pstatic,
00528     VL53L1_histogram_config_t         *phistogram,
00529     VL53L1_general_config_t           *pgeneral,
00530     VL53L1_timing_config_t            *ptiming,
00531     VL53L1_dynamic_config_t           *pdynamic,
00532     VL53L1_system_control_t           *psystem,
00533     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00534     VL53L1_zone_config_t              *pzone_cfg);
00535 
00536 
00537 
00538 VL53L1_Error VL53L1_preset_mode_histogram_long_range_mm2(
00539     VL53L1_hist_post_process_config_t *phistpostprocess,
00540     VL53L1_static_config_t            *pstatic,
00541     VL53L1_histogram_config_t         *phistogram,
00542     VL53L1_general_config_t           *pgeneral,
00543     VL53L1_timing_config_t            *ptiming,
00544     VL53L1_dynamic_config_t           *pdynamic,
00545     VL53L1_system_control_t           *psystem,
00546     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00547     VL53L1_zone_config_t              *pzone_cfg);
00548 
00549 
00550 
00551 VL53L1_Error VL53L1_preset_mode_histogram_medium_range_mm1(
00552     VL53L1_hist_post_process_config_t *phistpostprocess,
00553     VL53L1_static_config_t            *pstatic,
00554     VL53L1_histogram_config_t         *phistogram,
00555     VL53L1_general_config_t           *pgeneral,
00556     VL53L1_timing_config_t            *ptiming,
00557     VL53L1_dynamic_config_t           *pdynamic,
00558     VL53L1_system_control_t           *psystem,
00559     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00560     VL53L1_zone_config_t              *pzone_cfg);
00561 
00562 
00563 
00564 VL53L1_Error VL53L1_preset_mode_histogram_medium_range_mm2(
00565     VL53L1_hist_post_process_config_t *phistpostprocess,
00566     VL53L1_static_config_t            *pstatic,
00567     VL53L1_histogram_config_t         *phistogram,
00568     VL53L1_general_config_t           *pgeneral,
00569     VL53L1_timing_config_t            *ptiming,
00570     VL53L1_dynamic_config_t           *pdynamic,
00571     VL53L1_system_control_t           *psystem,
00572     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00573     VL53L1_zone_config_t              *pzone_cfg);
00574 
00575 
00576 
00577 VL53L1_Error VL53L1_preset_mode_histogram_short_range_mm1(
00578     VL53L1_hist_post_process_config_t *phistpostprocess,
00579     VL53L1_static_config_t            *pstatic,
00580     VL53L1_histogram_config_t         *phistogram,
00581     VL53L1_general_config_t           *pgeneral,
00582     VL53L1_timing_config_t            *ptiming,
00583     VL53L1_dynamic_config_t           *pdynamic,
00584     VL53L1_system_control_t           *psystem,
00585     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00586     VL53L1_zone_config_t              *pzone_cfg);
00587 
00588 
00589 
00590 VL53L1_Error VL53L1_preset_mode_histogram_short_range_mm2(
00591     VL53L1_hist_post_process_config_t *phistpostprocess,
00592     VL53L1_static_config_t            *pstatic,
00593     VL53L1_histogram_config_t         *phistogram,
00594     VL53L1_general_config_t           *pgeneral,
00595     VL53L1_timing_config_t            *ptiming,
00596     VL53L1_dynamic_config_t           *pdynamic,
00597     VL53L1_system_control_t           *psystem,
00598     VL53L1_tuning_parm_storage_t      *ptuning_parms,
00599     VL53L1_zone_config_t              *pzone_cfg);
00600 
00601 
00602 
00603 VL53L1_Error VL53L1_preset_mode_olt(
00604     VL53L1_static_config_t     *pstatic,
00605     VL53L1_histogram_config_t  *phistogram,
00606     VL53L1_general_config_t    *pgeneral,
00607     VL53L1_timing_config_t     *ptiming,
00608     VL53L1_dynamic_config_t    *pdynamic,
00609     VL53L1_system_control_t    *psystem,
00610     VL53L1_tuning_parm_storage_t *ptuning_parms,
00611     VL53L1_zone_config_t       *pzone_cfg);
00612 
00613 
00614 
00615 VL53L1_Error VL53L1_preset_mode_singleshot_ranging(
00616 
00617     VL53L1_static_config_t    *pstatic,
00618     VL53L1_histogram_config_t *phistogram,
00619     VL53L1_general_config_t   *pgeneral,
00620     VL53L1_timing_config_t    *ptiming,
00621     VL53L1_dynamic_config_t   *pdynamic,
00622     VL53L1_system_control_t   *psystem,
00623     VL53L1_tuning_parm_storage_t *ptuning_parms,
00624     VL53L1_zone_config_t      *pzone_cfg);
00625 
00626 
00627 
00628 
00629 void VL53L1_copy_hist_cfg_to_static_cfg(
00630     VL53L1_histogram_config_t  *phistogram,
00631     VL53L1_static_config_t     *pstatic,
00632     VL53L1_general_config_t    *pgeneral,
00633     VL53L1_timing_config_t     *ptiming,
00634     VL53L1_dynamic_config_t    *pdynamic);
00635 
00636 
00637 
00638 void VL53L1_copy_hist_bins_to_static_cfg(
00639     VL53L1_histogram_config_t *phistogram,
00640     VL53L1_static_config_t    *pstatic,
00641     VL53L1_timing_config_t    *ptiming);
00642 
00643 #ifdef __cplusplus
00644 }
00645 #endif
00646 
00647 #endif
00648 
00649