be_global.h
来自「这是广泛使用的通信开源项目,对于大容量,高并发的通讯要求完全能够胜任,他广泛可用」· C头文件 代码 · 共 562 行 · 第 1/2 页
H
562 行
/* -*- c++ -*- */
// be_global.h,v 1.11 2003/11/10 00:07:20 parsons Exp
// ============================================================================
//
// = LIBRARY
// TAO IDL
//
// = FILENAME
// be_global.h
//
// = DESCRIPTION
// Header file for class containing compiler back end global data.
//
// = AUTHOR
// Jeff Parsons <parsons@cs.wustl.edu>
//
// ============================================================================
#ifndef _BE_GLOBAL_H
#define _BE_GLOBAL_H
#include "TAO_IDL_BE_Export.h"
#include "idl_bool.h"
#include "ace/Unbounded_Queue.h"
class be_interface;
class be_interface_fwd;
class UTL_String;
class AST_PredefinedType;
// Defines a class containing all back end global data.
class TAO_IDL_BE_Export BE_GlobalData
{
public:
// = TITLE
// BE_GlobalData
//
// = DESCRIPTION
// Storage of global data specific to the compiler back end
//
enum LOOKUP_STRATEGY
{
// various lookup strategies
TAO_LINEAR_SEARCH,
TAO_DYNAMIC_HASH,
TAO_PERFECT_HASH,
TAO_BINARY_SEARCH,
TAO_ACTIVE_DEMUX,
TAO_USER_DEFINED
};
// Constructor
BE_GlobalData (void);
// Destructor
virtual ~BE_GlobalData (void);
// To switch between changing or non-changing standard include
// files (e.g. tao/corba.h) so that #include statements can be
// generated with ""s or <>s respectively.
virtual void changing_standard_include_files (size_t changing);
virtual size_t changing_standard_include_files (void);
// Helper functions that generate the file names for the C++ mapping
// generated code.
// The parameter <base_name_only> set to 0 (no base name, but full
// name with output dir path, is useful, when I just want just the
// base name to use in #include's etc.
static const char *be_get_client_hdr_fname (
int base_name_only = 0
);
static const char *be_get_client_stub_fname (void);
static const char *be_get_client_inline_fname (
int base_name_only = 0
);
static const char *be_get_server_hdr_fname (
int base_name_only = 0
);
static const char *be_get_implementation_hdr_fname (
int base_name_only = 0
);
static const char *be_get_implementation_skel_fname (
int base_name_only = 0
);
static const char *be_get_server_template_hdr_fname (
int base_name_only = 0
);
static const char *be_get_server_skeleton_fname (void);
static const char *be_get_implementation_skeleton_fname (void);
static const char *be_get_server_template_skeleton_fname (
int base_name_only = 0
);
static const char *be_get_server_inline_fname (
int base_name_only = 0
);
static const char *be_get_server_template_inline_fname (
int base_name_only = 0
);
static const char *be_get_anyop_header_fname (
int base_name_only = 0
);
static const char *be_get_anyop_source_fname (
int base_name_only = 0
);
// Helper functions: obtain the names of each generated file given
// the IDL file name.
// The parameter <base_name_only> set to 0 (no base name, but full
// name with output dir path, is useful, when I want just the
// base name to use in #include's etc.
static const char *be_get_client_hdr (UTL_String *idl_file_name,
int base_name_only = 0);
static const char *be_get_client_stub (UTL_String *idl_file_name);
static const char *be_get_client_inline (UTL_String *idl_file_name,
int base_name_only = 0);
static const char *be_get_server_hdr (UTL_String *idl_file_name,
int base_name_only = 0);
static const char *be_get_implementation_hdr (UTL_String *idl_file_name,
int base_name_only = 0);
static const char *be_get_implementation_skel (UTL_String *idl_file_name,
int base_name_only = 0);
static const char *be_get_server_template_hdr (UTL_String *idl_file_name,
int base_name_only = 0);
static const char *be_get_server_skeleton (UTL_String *idl_file_name);
static const char *be_get_server_template_skeleton (
UTL_String *idl_file_name,
int base_name_only = 0
);
static const char *be_get_server_inline (UTL_String *idl_file_name,
int base_name_only = 0);
static const char *be_get_server_template_inline (UTL_String *idl_file_name,
int base_name_only = 0);
static const char *be_get_anyop_header (UTL_String *idl_file_name,
int base_name_only = 0);
static const char *be_get_anyop_source (UTL_String *idl_file_name,
int base_name_only = 0);
const char* skel_export_macro (void) const;
// returns the macro name for exporting server side classes in Win32
// DLL.
void skel_export_macro (const char* s);
// set the macro name for export server side classes in Win32 DLL.
const char* skel_export_include (void) const;
// returns the name of the include file that contains the server
// side export macro definition.
void skel_export_include (const char* s);
// set the name of the include file that contains the server side
// export macro definition.
const char* stub_export_macro (void) const;
// returns the macro name for exporting client side classes in Win32
// DLL.
void stub_export_macro (const char* s);
// set the macro name for export client side classes in Win32 DLL.
const char* stub_export_include (void) const;
// returns the name of the include file that contains the client
// side export macro definition.
void stub_export_include (const char* s);
// set the name of the include file that contains the client side
// export macro definition.
const char* pch_include (void) const;
// returns the name of the include file to be used for precompiled
// header support.
void pch_include (const char* s);
// set the name of the include file to be used for precompiled
// header support.
const char* pre_include (void) const;
// returns the name of the include file to be put at the top of
// every header file.
void pre_include (const char* s);
// set the name of the include file to be put at the top of every
// header file.
const char* post_include (void) const;
// returns the name of the include file to be put at the bottom of
// every header file.
void post_include (const char* s);
// set the name of the include file to be put at the bottom of every
// header file.
// = Set and get methods for different file name endings.
void client_hdr_ending (const char* s);
// Set the client_hdr_ending.
const char* client_hdr_ending (void) const;
// Get the client_hdr_ending.
void client_inline_ending (const char* s);
// Set the client_inline_ending.
const char* client_inline_ending (void) const;
// Get the client_inline_ending.
void client_stub_ending (const char* s);
// Set the client_stub_ending.
const char* client_stub_ending (void) const;
// Get the client_stub_ending.
void server_hdr_ending (const char* s);
// Set the server_hdr_ending.
const char* server_hdr_ending (void) const;
// Get the server_hdr_ending.
void implementation_hdr_ending (const char* s);
// Set the implementation_hdr_ending.
void impl_class_prefix (const char* s);
// Set the implementation class prefix.
void impl_class_suffix (const char* s);
// Set the implementation class suffix.
void implementation_skel_ending (const char* s);
// Set the implementation_skel_ending.
const char* implementation_hdr_ending (void) const;
// Get the implementation_hdr_ending.
const char* impl_class_prefix (void) const;
//Get implementation class prefix
const char* impl_class_suffix (void) const;
//Get implementation class suffix
const char* implementation_skel_ending (void) const;
// Get the implementation_skel_ending.
void server_template_hdr_ending (const char* s);
// Set the server_template_hdr_ending.
const char* server_template_hdr_ending (void) const;
// Get the server_template_hdr_ending.
void server_skeleton_ending (const char* s);
// Set the server_skeleton_ending.
const char* server_skeleton_ending (void) const;
// Get the server_skeleton_ending.
void server_template_skeleton_ending (const char* s);
// Set the server_template_skeleton_ending.
const char* server_template_skeleton_ending (void) const;
// Get the server_template_skeleton_ending.
void server_inline_ending (const char* s);
// Set the server_inline_ending.
const char* server_inline_ending (void) const;
// Get the server_inline_ending.
void server_template_inline_ending (const char* s);
// Set the server_template_inline_ending.
const char* server_template_inline_ending (void) const;
// Get the server_template_inline_ending.
const char* anyop_header_ending (void) const;
const char* anyop_source_ending (void) const;
// TAO developers only.
void output_dir (const char* s);
// Set the directory where all the IDL-Compiler-Generated files are
// to be kept. Default is current directory from which the
// <tao_idl> is called.
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?