1 /*! 2 * @file tsc_ecs.h 3 * 4 * @brief This file contains external declarations of the tsc_ecs.c file. 5 * 6 * @version V1.0.1 7 * 8 * @date 2022-09-20 9 * 10 * @attention 11 * 12 * Copyright (C) 2020-2022 Geehy Semiconductor 13 * 14 * You may not use this file except in compliance with the 15 * GEEHY COPYRIGHT NOTICE (GEEHY SOFTWARE PACKAGE LICENSE). 16 * 17 * The program is only for reference, which is distributed in the hope 18 * that it will be useful and instructional for customers to develop 19 * their software. Unless required by applicable law or agreed to in 20 * writing, the program is distributed on an "AS IS" BASIS, WITHOUT 21 * ANY WARRANTY OR CONDITIONS OF ANY KIND, either express or implied. 22 * See the GEEHY SOFTWARE PACKAGE LICENSE for the governing permissions 23 * and limitations under the License. 24 */ 25 26 /* Define to prevent recursive inclusion */ 27 #ifndef __TOUCH_ECS_H 28 #define __TOUCH_ECS_H 29 30 #ifdef __cplusplus 31 extern "C" { 32 #endif 33 34 /* Includes */ 35 #include "tsc_object.h" 36 37 /** @addtogroup TSC_Driver_Library TSC Driver Library 38 @{ 39 */ 40 41 /** @addtogroup TSC_ECS_Driver TSC ECS Driver 42 @{ 43 */ 44 45 /** @defgroup TSC_ECS_Macros Macros 46 @{ 47 */ 48 49 #define FOR_OBJ_TYPE TSC_Globals.For_Obj->Type 50 #define FOR_KEY_REF TSC_Globals.For_Key->p_ChD->Refer 51 #define FOR_KEY_REFREST TSC_Globals.For_Key->p_ChD->RefRest 52 #define FOR_KEY_DELTA TSC_Globals.For_Key->p_ChD->Delta 53 #define FOR_KEY_STATEID TSC_Globals.For_Key->p_Data->StateId 54 55 #define FOR_LINROT_STATEID TSC_Globals.For_LinRot->p_Data->StateId 56 #define FOR_LINROT_NB_CHANNELS TSC_Globals.For_LinRot->NumChannel 57 58 /**@} end of group TSC_ECS_Macros */ 59 60 /** @defgroup TSC_ECS_Enumerations Enumerations 61 @{ 62 */ 63 64 /**@} end of group TSC_ECS_Enumerations */ 65 66 /** @defgroup TSC_ECS_Structures Structures 67 @{ 68 */ 69 70 /**@} end of group TSC_ECS_Structures */ 71 72 /** @defgroup TSC_ECS_Variables Variables 73 @{ 74 */ 75 76 /**@} end of group TSC_ECS_Variables */ 77 78 /** @defgroup TSC_ECS_Functions Functions 79 @{ 80 */ 81 82 TSC_tKCoeff_T TSC_Ecs_CalculateK(TSC_ObjectGroup_T* objgrp, TSC_tKCoeff_T kDiffer, TSC_tKCoeff_T kSame); 83 void TSC_Ecs_ProcessK(TSC_ObjectGroup_T* objgrp, TSC_tKCoeff_T kCoeff); 84 TSC_STATUS_T TSC_Ecs_Process(TSC_ObjectGroup_T* objgrp); 85 86 #ifdef __cplusplus 87 } 88 #endif 89 90 #endif /* __TSC_ECS_H */ 91 92 /**@} end of group TSC_ECS_Functions*/ 93 /**@} end of group TSC_ECS_Driver */ 94 /**@} end of group TSC_Driver_Library*/ 95