Creating a project about VL6180XA1 for TT_Mxx

Committer:
ThunderSoft
Date:
Fri Apr 26 09:34:53 2019 +0000
Revision:
3:7a97a01bad5e
Parent:
0:293917667c17
"update the mbed-os code to support TT_M4G9"

Who changed what in which revision?

UserRevisionLine numberNew contents of line
ThunderSoft 0:293917667c17 1 /**
ThunderSoft 0:293917667c17 2 ******************************************************************************
ThunderSoft 0:293917667c17 3 * @file ComponentObject.h
ThunderSoft 0:293917667c17 4 * @author AST
ThunderSoft 0:293917667c17 5 * @version V1.0.0
ThunderSoft 0:293917667c17 6 * @date April 13th, 2015
ThunderSoft 0:293917667c17 7 * @brief This file contains the abstract class describing the interface of a
ThunderSoft 0:293917667c17 8 * generic component.
ThunderSoft 0:293917667c17 9 ******************************************************************************
ThunderSoft 0:293917667c17 10 * @attention
ThunderSoft 0:293917667c17 11 *
ThunderSoft 0:293917667c17 12 * <h2><center>&copy; COPYRIGHT(c) 2015 STMicroelectronics</center></h2>
ThunderSoft 0:293917667c17 13 *
ThunderSoft 0:293917667c17 14 * Redistribution and use in source and binary forms, with or without modification,
ThunderSoft 0:293917667c17 15 * are permitted provided that the following conditions are met:
ThunderSoft 0:293917667c17 16 * 1. Redistributions of source code must retain the above copyright notice,
ThunderSoft 0:293917667c17 17 * this list of conditions and the following disclaimer.
ThunderSoft 0:293917667c17 18 * 2. Redistributions in binary form must reproduce the above copyright notice,
ThunderSoft 0:293917667c17 19 * this list of conditions and the following disclaimer in the documentation
ThunderSoft 0:293917667c17 20 * and/or other materials provided with the distribution.
ThunderSoft 0:293917667c17 21 * 3. Neither the name of STMicroelectronics nor the names of its contributors
ThunderSoft 0:293917667c17 22 * may be used to endorse or promote products derived from this software
ThunderSoft 0:293917667c17 23 * without specific prior written permission.
ThunderSoft 0:293917667c17 24 *
ThunderSoft 0:293917667c17 25 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
ThunderSoft 0:293917667c17 26 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
ThunderSoft 0:293917667c17 27 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
ThunderSoft 0:293917667c17 28 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE
ThunderSoft 0:293917667c17 29 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
ThunderSoft 0:293917667c17 30 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
ThunderSoft 0:293917667c17 31 * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
ThunderSoft 0:293917667c17 32 * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
ThunderSoft 0:293917667c17 33 * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
ThunderSoft 0:293917667c17 34 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
ThunderSoft 0:293917667c17 35 *
ThunderSoft 0:293917667c17 36 ******************************************************************************
ThunderSoft 0:293917667c17 37 */
ThunderSoft 0:293917667c17 38
ThunderSoft 0:293917667c17 39
ThunderSoft 0:293917667c17 40 /* Define to prevent recursive inclusion -------------------------------------*/
ThunderSoft 0:293917667c17 41
ThunderSoft 0:293917667c17 42 #ifndef __COMPONENT_OBJECT_CLASS_H
ThunderSoft 0:293917667c17 43 #define __COMPONENT_OBJECT_CLASS_H
ThunderSoft 0:293917667c17 44
ThunderSoft 0:293917667c17 45
ThunderSoft 0:293917667c17 46 /* Includes ------------------------------------------------------------------*/
ThunderSoft 0:293917667c17 47
ThunderSoft 0:293917667c17 48 #include <stdint.h>
ThunderSoft 0:293917667c17 49
ThunderSoft 0:293917667c17 50
ThunderSoft 0:293917667c17 51 /* Classes ------------------------------------------------------------------*/
ThunderSoft 0:293917667c17 52
ThunderSoft 0:293917667c17 53 /** An abstract class for Generic components.
ThunderSoft 0:293917667c17 54 */
ThunderSoft 0:293917667c17 55 class ComponentObject
ThunderSoft 0:293917667c17 56 {
ThunderSoft 0:293917667c17 57 public:
ThunderSoft 0:293917667c17 58 /**
ThunderSoft 0:293917667c17 59 * @brief Initializing the component.
ThunderSoft 0:293917667c17 60 * @param[in] init pointer to device specific initalization structure.
ThunderSoft 0:293917667c17 61 * @retval "0" in case of success, an error code otherwise.
ThunderSoft 0:293917667c17 62 */
ThunderSoft 0:293917667c17 63 virtual int Init() = 0;
ThunderSoft 0:293917667c17 64
ThunderSoft 0:293917667c17 65 /**
ThunderSoft 0:293917667c17 66 * @brief Getting the ID of the component.
ThunderSoft 0:293917667c17 67 * @param[out] id pointer to an allocated variable to store the ID into.
ThunderSoft 0:293917667c17 68 * @retval "0" in case of success, an error code otherwise.
ThunderSoft 0:293917667c17 69 */
ThunderSoft 0:293917667c17 70 virtual int ReadID() = 0;
ThunderSoft 0:293917667c17 71 };
ThunderSoft 0:293917667c17 72
ThunderSoft 0:293917667c17 73 #endif /* __COMPONENT_OBJECT_CLASS_H */
ThunderSoft 0:293917667c17 74
ThunderSoft 0:293917667c17 75 /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
ThunderSoft 0:293917667c17 76