📄 bca_types.h
字号:
/*
* Copyright (c) 2004, Open Crypto Services Group
* All rights reserved.
*
* 文件名称:bjcapp_types.h
*
* 当前版本:1.0
* 作 者:
* 创建日期:2004年2月1日
* 主要修改说明:
*
* 历史信息:
*
* 版本:1.0
* 作者:
* 日期:2004/2/1
* 主要修改说明:
*
* 版本:
* 作者:
* 日期:
* 主要修改说明:
*
*/
#ifndef _BCA_TYPES_
#define _BCA_TYPES_
#ifdef __cplusplus
extern "C" {
#endif
/***********************************************************************
**** MACROS: BCA_BEGIN_EXTERN_C** BCA_END_EXTERN_C** DESCRIPTION:** Macro shorthands for conditional C++ extern block delimiters.
*************************************************************************/#ifdef __cplusplus#define BCA_BEGIN_EXTERN_C extern "C" {#define BCA_END_EXTERN_C }#else#define BCA_BEGIN_EXTERN_C#define BCA_END_EXTERN_C#endif
typedef unsigned char BCA_UINT8;
typedef unsigned short BCA_UINT16;
typedef unsigned long BCA_UINT32;
typedef long BCA_SINT32;
typedef int BCA_INT;
typedef unsigned int BCA_UINT;
typedef BCA_INT BCA_BOOL;#define BCA_TRUE 1#define BCA_FALSE 0#ifndef BCA_NULL_PTR
#define BCA_NULL_PTR 0
#endif
#ifndef BCA_IN
#define BCA_IN
#endif
#ifndef BCA_OUT
#define BCA_OUT
#endif
/***********************************************************************
**
** MACROS: BCA_EXTERN
** BCA_IMPLEMENT
** DESCRIPTION:
** These are only for externally visible routines and globals. For
** internal routines, just use "extern" for type checking and that
** will not export internal cross-file or forward-declared symbols.
** Define a macro for declaring procedures return types. We use this to
** deal with windoze specific type hackery for DLL definitions. Use
** BCA_EXTERN when the prototype for the method is declared. Use
** BCA_IMPLEMENT for the implementation of the method.
**
** Example:
** in dowhim.h
** BCA_EXTERN( void ) DoWhatIMean( void );
** in dowhim.c
** BCA_IMPLEMENT( void ) DoWhatIMean( void ) { return; }
**
**
***********************************************************************/
#if defined(BCA_WIN_DLL)
#define BCA_CALLING_CONVENTION __cdecl
//#define BCA_CALLING_CONVENTION __stdcall
#else
#define BCA_CALLING_CONVENTION
#endif
#if defined(BCA_OS_WIN32)
#if defined(BCA_WIN_DLL)
#define BCA_EXTERN(__type) extern __declspec(dllexport) __type BCA_CALLING_CONVENTION
#define BCA_IMPLEMENT(__type) __declspec(dllexport) __type BCA_CALLING_CONVENTION
#define BCA_EXTERN_DATA(__type) extern __declspec(dllexport) __type BCA_CALLING_CONVENTION
#define BCA_IMPLEMENT_DATA(__type) __declspec(dllexport) __type BCA_CALLING_CONVENTION
#else /* BCA_WIN_DLL */
#define BCA_EXTERN(__type) extern __type
#define BCA_IMPLEMENT(__type) __type
#define BCA_EXTERN_DATA(__type) extern __type
#define BCA_IMPLEMENT_DATA(__type) __type
#endif /* BCA_WIN_DLL */
#endif /* BCA_OS_WIN32 */
#if defined(BCA_OS_LINUX)
#define BCA_EXTERN(__type) extern __type
#define BCA_IMPLEMENT(__type) __type
#define BCA_EXTERN_DATA(__type) extern __type
#define BCA_IMPLEMENT_DATA(__type) __type
#endif /* BCA_OS_UNIX */
#if defined(BCA_BUILD)
#define BCA_API(__type) BCA_IMPLEMENT(__type)
#define BCA_DATA(__type) BCA_IMPLEMENT_DATA(__type)
#else
#define BCA_API(__type) BCA_EXTERN(__type)
#define BCA_DATA(__type) BCA_EXTERN_DATA(__type)
#endif
#ifdef __cplusplus
}
#endif
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -