SBlogMapper.h
上传用户:xqtpzdz
上传日期:2022-05-21
资源大小:1764k
文件大小:4k
源码类别:

xml/soap/webservice

开发平台:

Visual C++

  1. /****************License************************************************
  2.  * Vocalocity OpenVXI
  3.  * Copyright (C) 2004-2005 by Vocalocity, Inc. All Rights Reserved.
  4.  * This program is free software; you can redistribute it and/or
  5.  * modify it under the terms of the GNU General Public License
  6.  * as published by the Free Software Foundation; either version 2
  7.  * of the License, or (at your option) any later version.
  8.  *  
  9.  * This program is distributed in the hope that it will be useful,
  10.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  11.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  12.  * GNU General Public License for more details.
  13.  *
  14.  * You should have received a copy of the GNU General Public License
  15.  * along with this program; if not, write to the Free Software
  16.  * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.
  17.  * Vocalocity, the Vocalocity logo, and VocalOS are trademarks or 
  18.  * registered trademarks of Vocalocity, Inc. 
  19.  * OpenVXI is a trademark of Scansoft, Inc. and used under license 
  20.  * by Vocalocity.
  21.  ***********************************************************************/
  22. // -----1=0-------2=0-------3=0-------4=0-------5=0-------6=0-------7=0-------8
  23. #ifndef SBLOG_MAPPER_HPP
  24. #define SBLOG_MAPPER_HPP
  25. #include "VXIheaderPrefix.h"
  26. #ifdef SBLOGMAPPER_DLL
  27. #ifdef SBLOGMAPPER_EXPORTS
  28. #define SBLOGMAPPER_API SYMBOL_EXPORT_DECL
  29. #else
  30. #define SBLOGMAPPER_API SYMBOL_IMPORT_DECL
  31. #endif
  32. #else
  33. #ifdef __cplusplus
  34. #define SBLOGMAPPER_API extern "C"
  35. #else
  36. #define SBLOGMAPPER_API extern
  37. #endif
  38. #endif
  39. #include "VXIlog.h"             // For VXIlogResult
  40. #include "VXIvalue.h"           // For VXIVector
  41. #ifdef __cplusplus
  42. ///
  43. class SBlogErrorMapper;
  44. #else
  45. typedef struct SBlogErrorMapper { void * dummy; } SBlogErrorMapper;
  46. #endif
  47. /**
  48.  * addtogroup VXIlog
  49.  */
  50. /*@{*/
  51. /**
  52.  * Create a new XML error mapper
  53.  *
  54.  * @param errorMapFiles   [IN] VXIVector of local OpenSpeech Browser PIK
  55.  *                             XML error mapping files
  56.  * @param mapper          [OUT] Handle to the error mapper
  57.  *
  58.  * @result VXIlog_RESULT_SUCCESS on success 
  59.  */
  60. SBLOGMAPPER_API VXIlogResult 
  61. SBlogErrorMapperCreate(const VXIVector    *errorMapFiles,
  62.        SBlogErrorMapper  **mapper);
  63. /**
  64.  * Destroy an XML error mapper
  65.  *
  66.  * @param mapper          [IN/OUT] Handle to the error mapper, set
  67.  *                                 to NULL on success
  68.  *
  69.  * @result VXIlog_RESULT_SUCCESS on success 
  70.  */
  71. SBLOGMAPPER_API VXIlogResult
  72. SBlogErrorMapperDestroy(SBlogErrorMapper **mapper);
  73. /**
  74.  * Map an error ID to text and a severity
  75.  *
  76.  * @param mapper      [IN] Handle to the error mapper
  77.  * @param errorID     [IN] Error ID to map as passed to VXIlog::Error( )
  78.  * @param moduleName  [IN] Module name reporting the error as passed to
  79.  *                         VXIlog::Error( )
  80.  * @param errorText   [OUT] Error text as defined in the error mapping
  81.  *                          file. Owned by the error text mapper, must
  82.  *                          not be modified or freed.
  83.  * @param severity    [OUT] Severity identifier as defined in the error
  84.  *                          mapping file. Owned by the error text mapper,
  85.  *                          must not be modified or freed. Typically one
  86.  *                          of the following:
  87.  *                            0 -> UNKNOWN (no mapping found)
  88.  *                            1 -> CRITICAL
  89.  *                            2 -> SEVERE
  90.  *                            3 -> WARNING
  91.  *
  92.  * @result VXIlog_RESULT_SUCCESS on success 
  93.  */
  94. SBLOGMAPPER_API VXIlogResult
  95. SBlogErrorMapperGetErrorInfo(SBlogErrorMapper  *mapper,
  96.      VXIunsigned        errorID,
  97.      const VXIchar     *moduleName,
  98.      const VXIchar    **errorText,
  99.      VXIint            *severityLevel); 
  100. /*@}*/
  101. #include "VXIheaderSuffix.h"
  102. #endif /* include guard */