Bumped Mbed FW version to 01.20.0080

Embed: (wiki syntax)

« Back to documentation index

Show/hide line numbers admw_config_types.h Source File

admw_config_types.h

Go to the documentation of this file.
00001 /*
00002 Copyright (c) 2019 Analog Devices, Inc.
00003 
00004 All rights reserved.
00005 
00006 Redistribution and use in source and binary forms, with or without modification,
00007 are permitted provided that the following conditions are met:
00008   - Redistributions of source code must retain the above copyright notice,
00009     this list of conditions and the following disclaimer.
00010   - Redistributions in binary form must reproduce the above copyright notice,
00011     this list of conditions and the following disclaimer in the documentation
00012     and/or other materials provided with the distribution.
00013   - Modified versions of the software must be conspicuously marked as such.
00014   - This software is licensed solely and exclusively for use with processors
00015     manufactured by or for Analog Devices, Inc.
00016   - This software may not be combined or merged with other code in any manner
00017     that would cause the software to become subject to terms and conditions
00018     which differ from those listed here.
00019   - Neither the name of Analog Devices, Inc. nor the names of its
00020     contributors may be used to endorse or promote products derived
00021     from this software without specific prior written permission.
00022   - The use of this software may or may not infringe the patent rights of one
00023     or more patent holders.  This license does not release you from the
00024     requirement that you obtain separate licenses from these patent holders
00025     to use this software.
00026 
00027 THIS SOFTWARE IS PROVIDED BY ANALOG DEVICES, INC. AND CONTRIBUTORS "AS IS" AND ANY
00028 EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, NON-INFRINGEMENT,
00029 TITLE, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN
00030 NO EVENT SHALL ANALOG DEVICES, INC. OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
00031 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, PUNITIVE OR CONSEQUENTIAL DAMAGES
00032 (INCLUDING, BUT NOT LIMITED TO, DAMAGES ARISING OUT OF CLAIMS OF INTELLECTUAL
00033 PROPERTY RIGHTS INFRINGEMENT; PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
00034 OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
00035 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
00036 NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
00037 EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
00038 */
00039 
00040 /*!
00041  ******************************************************************************
00042  * @file:   admw_config_types.h
00043  * @brief:  Type definitions for ADMW API.
00044  *-----------------------------------------------------------------------------
00045  */
00046 
00047 #ifndef __ADMW_CONFIG_TYPES_H__
00048 #define __ADMW_CONFIG_TYPES_H__
00049 
00050 #include "admw_platform.h"
00051 #include "admw1001/admw1001_config.h"
00052 
00053 /*! @addtogroup ADMW_Api ADMW Host Library API
00054  *  @{
00055  */
00056 
00057 #ifdef __cplusplus
00058 extern "C" {
00059 #endif
00060 
00061 /*! A list of supported product identifiers */
00062 typedef enum {
00063     ADMW_PRODUCT_ID_ADMW1001  = 0x0020,
00064     /*!< ADSNS1000 */
00065 } ADMW_PRODUCT_ID ;
00066 
00067 /*! ADMW Configuration schema version */
00068 typedef struct {
00069     uint8_t major ; /*!< Major version number */
00070     uint8_t minor ; /*!< Minor version number */
00071 } ADMW_CONFIG_VERSION_ID ;
00072 
00073 /*! ADMW UUID string length */
00074 #define ADMW_UUID_LEN 36
00075 
00076 /*! ADMW global configuration details */
00077 typedef struct {
00078     const char                  configUuid[ADMW_UUID_LEN];
00079     /*!< Optional unique identifier for this configuration */
00080     ADMW_CONFIG_VERSION_ID  versionId;
00081     /*!< Identifies the schema version for this configuration */
00082     ADMW_PRODUCT_ID         productId;
00083     /*!< Identify the product type for which this configuration is valid */
00084     union
00085     {
00086         ADMW1001_CONFIG    admw1001;
00087         /*!< ADSNS1000 product configuration parameters.  Used if productId
00088          *   selected is ADMW_PRODUCT_ID_ADSNS1000 */
00089     };
00090     /*!< Product-specific configuration parameters, selected based on productId.
00091      *   @note Other product variants may be added here in the future */
00092 } ADMW_CONFIG ;
00093 
00094 #ifdef __cplusplus
00095 }
00096 #endif
00097 
00098 /*!
00099  * @}
00100  */
00101 
00102 #endif /* __ADMW_CONFIG_TYPES_H__ */