1/* 2 * Copyright (C) 2011 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16/** 17 ************************************************************************ 18 * @file M4OSA_CharStar.h 19 * @ingroup 20 * @brief external API of the Char Star set of functions. 21 ************************************************************************ 22*/ 23 24#ifndef M4OSA_CHARSTAR_H 25#define M4OSA_CHARSTAR_H 26 27/* general OSAL types and prototypes inclusion */ 28#include "M4OSA_Types.h" 29#include "M4OSA_Error.h" 30#include "M4OSA_Time.h" 31#include "M4OSA_FileCommon.h" 32 33/* types definition */ 34typedef enum 35{ 36 M4OSA_kchrDec = 0x01, 37 M4OSA_kchrHexa = 0x02, 38 M4OSA_kchrOct = 0x03 39} M4OSA_chrNumBase; 40 41/* error and warning codes */ 42#define M4ERR_CHR_STR_OVERFLOW M4OSA_ERR_CREATE(M4_ERR,M4OSA_CHARSTAR,0x000001) 43#define M4ERR_CHR_CONV_FAILED M4OSA_ERR_CREATE(M4_ERR,M4OSA_CHARSTAR,0x000002) 44#define M4WAR_CHR_NOT_FOUND M4OSA_ERR_CREATE(M4_WAR,M4OSA_CHARSTAR,0x000001) 45#define M4WAR_CHR_NUM_RANGE M4OSA_ERR_CREATE(M4_WAR,M4OSA_CHARSTAR,0x000002) 46#define M4WAR_CHR_NEGATIVE M4OSA_ERR_CREATE(M4_WAR,M4OSA_CHARSTAR,0x000003) 47 48/* prototypes of the Char Star functions */ 49#ifdef __cplusplus 50extern "C" 51{ 52#endif 53 54M4OSAL_CHARSTAR_EXPORT_TYPE M4OSA_ERR M4OSA_chrNCopy (M4OSA_Char *strOut, 55 M4OSA_Char *strIn, 56 M4OSA_UInt32 len2Copy); 57M4OSAL_CHARSTAR_EXPORT_TYPE M4OSA_ERR M4OSA_chrAreIdentical (M4OSA_Char *strIn1, 58 M4OSA_Char *strIn2, 59 M4OSA_Bool *result); 60M4OSAL_CHARSTAR_EXPORT_TYPE M4OSA_ERR M4OSA_chrGetUInt32 (M4OSA_Char *strIn, 61 M4OSA_UInt32 *val, 62 M4OSA_Char **strOut, 63 M4OSA_chrNumBase base); 64M4OSAL_CHARSTAR_EXPORT_TYPE M4OSA_ERR M4OSA_chrGetUInt16 (M4OSA_Char *strIn, 65 M4OSA_UInt16 *val, 66 M4OSA_Char **strOut, 67 M4OSA_chrNumBase base); 68M4OSAL_CHARSTAR_EXPORT_TYPE M4OSA_ERR M4OSA_chrSPrintf (M4OSA_Char *strOut, 69 M4OSA_UInt32 strOutMaxLen, 70 M4OSA_Char *format, 71 ...); 72 73#ifdef __cplusplus 74} 75#endif 76 77#endif 78 79