zoukankan      html  css  js  c++  java
  • ACE 的头文件包含

    在使用 ACE 的过程中,发现项目组程序都是在使用到那个头文件的时候就引入一个头文件,结果一些头文件重复引用(在不同的文件中进行了重复引用),现在对 ACE 的头文件进行分类整理如下:

    1. 将所有的头文件按照功能的不同依次包含
    2. 消除互相包含中的基本头文件

    整理后,任何工程只需要包含该头文件即可, 如果是在支持预编译的编译器上进行编译,还可以将该头文件直接包含在预编译头文件中,整理后的ACE头文件如下:

    //==================================================================================================
    //    Summary:
    //        ACE ( Adaptive Communication Environment ) Headers
    //    
    //    Comment:
    //        <1>    This header is include by Stable_Headers.h
    //        <2>    The headers which repeat include is removed
    //
    //    Referer:
    //        <1>    ACE_Wrappers/docs/ACE-categories.html
    //        <2>    ACE_Wrappers/docs/ACE-subsets.html
    //
    //    ---------------------------------------------------------------------------------------------
    //    Copyright: Shine Energy Technology            Author: WonKerr                Date: 2009-08-04
    //==================================================================================================

    #ifndef __ADAPTIVE_COMMUNICATION_ENVIRONMENT_HEADERS__
    #define __ADAPTIVE_COMMUNICATION_ENVIRONMENT_HEADERS__

    //==================================================================================================
    //    Discard wraning of security on windows platform
    #if    defined( _MSC_VER ) && defined( _WIN32 )
    #    define _CRT_NON_CONFORMING_SWPRINTFS
    #    define _CRT_NONSTDC_NO_DEPRECATE
    #    define _CRT_NONSTDC_NO_WARNINGS
    #    define _CRT_SECURE_NO_DEPRECATE
    #    define _CRT_SECURE_NO_WARNINGS
    #endif

    //==================================================================================================
    //    ACE OS API Wrapper ( OS API Adapter )
    #include <ace/ACE.h>
    #include 
    <ace/OS.h>

    //==================================================================================================
    //    ACE Codecs ( Only BASE64 )
    #include <ace/Codecs.h>

    //==================================================================================================
    //    ACE CDR ( Common Data Stream Input / Output )
    #include <ace/CDR_Stream.h>

    //==================================================================================================
    //    Containers
    #include <ace/Array.h>
    #include 
    <ace/Containers.h>
    #include 
    <ace/Hash_Map_Manager.h>
    #include 
    <ace/Filecache.h>
    #include 
    <ace/Free_List.h>
    #include 
    <ace/Managed_Object.h>
    #include 
    <ace/Map_Manager.h>
    #include 
    <ace/Object_Manager.h>
    #include 
    <ace/SString.h>

    //==================================================================================================
    //    Concurrency
    #include <ace/Activation_Queue.h>
    #include 
    <ace/Future.h>
    #include 
    <ace/Method_Request.h>
    #include 
    <ace/Process.h>
    #include 
    <ace/Process_Manager.h>
    #include 
    <ace/Sched_Params.h>
    #include 
    <ace/Synch.h>
    #include 
    <ace/Synch_Options.h>
    #include 
    <ace/Synch_T.h>
    #include 
    <ace/Thread.h>
    #include 
    <ace/Thread_Manager.h>
    #include 
    <ace/Token.h>

    //==================================================================================================
    //    Configuration
    #include <ace/Configuration_Import_Export.h>

    //==================================================================================================
    //    Connection
    #include <ace/Acceptor.h>
    #include 
    <ace/Asynch_Acceptor.h>
    #include 
    <ace/Asynch_IO.h>
    #include 
    <ace/Connector.h>
    #include 
    <ace/Dynamic_Service.h>
    #include 
    <ace/Strategies.h>
    #include 
    <ace/Strategies_T.h>
    #include 
    <ace/Svc_Handler.h>

    //==================================================================================================
    //    IO_SAP ( DEV_SAP / FILE_SAP ) 
    #include <ace/DEV_Connector.h>
    #include 
    <ace/FILE_Connector.h>
    #include 
    <ace/TTY_IO.h>

    //==================================================================================================
    //    IPC_SAP ( Addr / FIFO_SAP / SOCK_SAP / SPIPE_SAP / UPIPE_SAP / Misc ) ( TLI & LSOCK Removed )
    #include <ace/FIFO_Recv_Msg.h>
    #include 
    <ace/FIFO_Send_Msg.h>

    #include 
    <ace/SOCK_CODgram.h>
    #include 
    <ace/SOCK_Dgram_Bcast.h>
    #include 
    <ace/SOCK_Dgram_Mcast.h>

    #include 
    <ace/SPIPE_Acceptor.h>
    #include 
    <ace/SPIPE_Connector.h>

    #include 
    <ace/UPIPE_Acceptor.h>
    #include 
    <ace/UPIPE_Connector.h>

    #include 
    <ace/MEM_Acceptor.h>
    #include 
    <ace/MEM_Connector.h>

    #include 
    <ace/IOStream.h>
    #include 
    <ace/Pipe.h>
    #include 
    <ace/Signal.h>

    //==================================================================================================
    //    Logging & Tracing
    #include <ace/Dump.h>
    #include 
    <ace/Dump_T.h>
    #include 
    <ace/Log_Msg.h>
    #include 
    <ace/Log_Priority.h>
    #include 
    <ace/Log_Record.h>
    #include 
    <ace/Trace.h>

    //==================================================================================================
    //    Memory ( Mem_Map / Shared_Malloc / Shared_Memory )
    #include <ace/Malloc_T.h>
    #include 
    <ace/Memory_Pool.h>
    #include 
    <ace/Shared_Memory_MM.h>
    #include 
    <ace/Shared_Memory_SV.h>

    //==================================================================================================
    //    Utils
    #include <ace/Obstack.h>
    #include 
    <ace/Read_Buffer.h>

    //==================================================================================================
    //    Misc
    #include <ace/ARGV.h>
    #include 
    <ace/Auto_Ptr.h>
    #include 
    <ace/Date_Time.h>
    #include 
    <ace/Dynamic.h>
    #include 
    <ace/Get_Opt.h>
    #include 
    <ace/Registry.h>
    #include 
    <ace/Singleton.h>
    #include 
    <ace/System_Time.h>

    //==================================================================================================
    //    Name_Service
    #include <ace/Local_Name_Space.h>
    #include 
    <ace/Local_Name_Space_T.h>
    #include 
    <ace/Name_Proxy.h>
    #include 
    <ace/Name_Request_Reply.h>
    #include 
    <ace/Name_Space.h>
    #include 
    <ace/Naming_Context.h>
    #include 
    <ace/Registry_Name_Space.h>
    #include 
    <ace/Remote_Name_Space.h>

    //==================================================================================================
    //    Reactor & Proactor
    #include <ace/Event_Handler_T.h>
    #include 
    <ace/Handle_Set.h>
    #include 
    <ace/Priority_Reactor.h>
    #include 
    <ace/Proactor.h>
    #include 
    <ace/Reactor.h>
    #include 
    <ace/TP_Reactor.h>

    //==================================================================================================
    //    Service_Configurator
    #include <ace/DLL.h>
    #include 
    <ace/Parse_Node.h>
    #include 
    <ace/Service_Config.h>
    #include 
    <ace/Service_Manager.h>
    #include 
    <ace/Service_Object.h>
    #include 
    <ace/Service_Repository.h>
    #include 
    <ace/Service_Types.h>
    #include 
    <ace/Shared_Object.h>
    #include 
    <ace/Svc_Conf.h>
    #include 
    <ace/Svc_Conf_Tokens.h>

    //==================================================================================================
    //    Streams
    #include <ace/IO_Cntl_Msg.h>
    #include 
    <ace/Message_Queue_T.h>
    #include 
    <ace/Module.h>
    #include 
    <ace/Stream.h>
    #include 
    <ace/Stream_Modules.h>
    #include 
    <ace/Task_T.h>

    //==================================================================================================
    //    Timers
    #include <ace/Profile_Timer.h>
    #include 
    <ace/Time_Value.h>
    #include 
    <ace/Timer_Hash.h>
    #include 
    <ace/Timer_Heap.h>
    #include 
    <ace/Timer_List.h>
    #include 
    <ace/Timer_Queue.h>
    #include 
    <ace/Timer_Queue_Adapters.h>
    #include 
    <ace/Timer_Wheel.h>

    //==================================================================================================
    //    Token_Service
    #include <ace/Remote_Tokens.h>
    #include 
    <ace/Token_Collection.h>
    #include 
    <ace/Token_Manager.h>
    #include 
    <ace/Token_Request_Reply.h>
    #include 
    <ace/Token_Invariants.h>

    //==================================================================================================
    //    standalones
    #include <ace/Dirent.h>

    //==================================================================================================
    #endif /* __ADAPTIVE_COMMUNICATION_ENVIRONMENT_HEADERS__ */
    如果有一个工程需要使用 ACE ,那么可以为该工程创建一个头文件 Stable_Headers.h 在该文件中首先引用该头文件,该工程内的所有源程序文件都包含 Stable_Headers.h , 如果在支持预编译的编译器上创建工程(例如 VC 系列编译器)那么可以在创建预编译的文件里面包含该该头文件,并将该头文件设置为预编译头文件即可;当然如果你也可以使用默认的 StdAfx.h 和 StdAfx.cpp 这两个名称;
  • 相关阅读:
    mac 10.15.7 修改PATH
    oc 属性类型一般用法
    ubuntu解压zip文件名乱码
    telnet 退出
    docker 根据容器创建镜像
    mac android adb device 没有显示设备
    Yii2 查看所有的别名 alias
    Yii2 App Advanced 添加 .gitignore
    ubuntu 18.04 搜狗突然就提示乱码
    An error occured while deploying the file. This probably means that the app contains ARM native code and your Genymotion device cannot run ARM instructions. You should either build your native code to
  • 原文地址:https://www.cnblogs.com/WonKerr/p/ACE_Headers.html
Copyright © 2011-2022 走看看